Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 分叉与脊端点_Java_Image_Image Processing_Imagej - Fatal编程技术网

Java 分叉与脊端点

Java 分叉与脊端点,java,image,image-processing,imagej,Java,Image,Image Processing,Imagej,有没有办法只使用Java代码而不是Matlab等来找到图像(手、静脉)中的分叉点和脊线端点。?我可以通过Java的ImageJ库实现这一点吗 您可以在中找到的科学描述。 一些算法在see see segmentation部分中实现 OpenCV库可以使用JNI链接到java。有一个ImageJ插件可以帮助您做到这一点: (有关来源,请参阅) 您可以使用其SkeletonResult类提取分支点和端点。非常感谢您的帮助,我使用IJ完成了AnalyzeSkeleton并在SekeletonResu

有没有办法只使用Java代码而不是Matlab等来找到图像(手、静脉)中的分叉点和脊线端点。?我可以通过Java的ImageJ库实现这一点吗

您可以在中找到的科学描述。 一些算法在see see segmentation部分中实现


OpenCV库可以使用JNI链接到java。

有一个ImageJ插件可以帮助您做到这一点:

(有关来源,请参阅)


您可以使用其
SkeletonResult
类提取分支点和端点。

非常感谢您的帮助,我使用IJ完成了AnalyzeSkeleton并在SekeletonResult响应中获得了结果。为此,我使用了IJ.run(imp,“Skeletonize”,“”)

//初始化分析框架_
AnalyzeSkeleton_uskel=新的AnalyzeSkeleton_ukel();
skel.calculateShortestPath=true;
骨架设置(“,imp);
//在静默模式下执行分析
//(如果不希望显示ImagePlus,请使用它的副本)
//运行(int-pruneIndex、boolean-pruneEnds、boolean-shortPath、ImagePlus-origIP、boolean-silent、boolean-verbose)
SkeletonResult SkeleResult=skel.run(AnalyzeSkeleton.NONE,false,true,null,true,false);
//阅读结果
对象最短路径[]=skelResult.getShortestPathList().toArray();
double BranchLength[]=skelResult.getAverageBranchLength();
int branchNumbers[]=skelResult.getBranchs();
长总长度=0;
for(int i=0;i
@RyanAmos我更喜欢(链接)。@AndrewThompson噢,太好了。我必须从现在开始使用它!嗨,斯塔克。我对OpenCv不是很满意。我以后会用这个方法。我希望我能得到我的期望。非常感谢你帮我解决这个问题。链接断了,你能提供一些其他资源吗@jayHi jan非常感谢您的帮助。还有一点帮助,我可以通过上述实现的代码获得SkeletonResult类响应。但是SkeletonResult类中的哪个方法返回Bifuraction和edning point。SkeletonResult类中有一个方法端点,但对于每个图像,它只返回1个分支点和脊线的数量java中图像的点?或者我可以从SkeletonResult类得到它?
 // Initialize AnalyzeSkeleton_
  AnalyzeSkeleton_ skel = new AnalyzeSkeleton_();
 skel.calculateShortestPath = true;
 skel.setup("", imp);

 // Perform analysis in silent mode
 // (work on a copy of the ImagePlus if you don't want it displayed)
 // run(int pruneIndex, boolean pruneEnds, boolean shortPath, ImagePlus origIP, boolean silent, boolean verbose)
 SkeletonResult skelResult = skel.run(AnalyzeSkeleton_.NONE, false, true, null, true, false);

 // Read the results
 Object shortestPaths[] = skelResult.getShortestPathList().toArray();
 double branchLengths[] = skelResult.getAverageBranchLength();
 int branchNumbers[] = skelResult.getBranches();

 long totalLength = 0;
 for (int i = 0; i < branchNumbers.length; i++) {
     totalLength += branchNumbers[i] * branchLengths[i];
 }

 double cumulativeLengthOfShortestPaths = 0;
 for (int i = 0; i < shortestPaths.length; i++) {
     cumulativeLengthOfShortestPaths +=(Double)shortestPaths[i];
 }
  System.out.println("totalLength "+totalLength);
  System.out.println("cumulativeLengthOfShortestPaths "+cumulativeLengthOfShortestPaths);
System.out.println("getNumOfTrees "+skelResult.getNumOfTrees());
System.out.println("getAverageBranchLength "+skelResult.getAverageBranchLength().length);
System.out.println("getBranches "+skelResult.getBranches().length);
System.out.println("getEndPoints "+skelResult.getEndPoints().length);
System.out.println("getGraph "+skelResult.getGraph().length);
System.out.println("getJunctions "+skelResult.getJunctions().length);
System.out.println("getJunctionVoxels "+skelResult.getJunctionVoxels().length);
System.out.println("getListOfEndPoints "+skelResult.getListOfEndPoints().size());
System.out.println("getListOfJunctionVoxels "+skelResult.getListOfJunctionVoxels().size());
System.out.println("getMaximumBranchLength "+skelResult.getMaximumBranchLength().length);
System.out.println("getNumberOfVoxels "+skelResult.getNumberOfVoxels().length);
System.out.println("getQuadruples "+skelResult.getQuadruples().length); this method .but I am not able to find which method in Skeleton Result class returns bifuraction point could you please help me little more thanks Amar