Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.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
Image Matlab-如何测量二值图像中黑色的分散度?_Image_Matlab_Pixels - Fatal编程技术网

Image Matlab-如何测量二值图像中黑色的分散度?

Image Matlab-如何测量二值图像中黑色的分散度?,image,matlab,pixels,Image,Matlab,Pixels,我正在比较随机洒在白色背景上的彩色小颗粒的RGB图像。我目前的方法包括将图像导入Matlab,转换为二值图像,设置阈值,并强制其上方的所有像素为白色。接下来,我将计算黑色像素的百分比。在相互比较图像时,黑色像素百分比的测量非常好;但是,它没有考虑颗粒的分散程度。虽然两个不同图像的黑色百分比可能相同,但图像可能远非相同。例如,假设我有两个图像要比较。两者都显示15%的黑色像素。在一幅图片中,黑色像素在整个图像中随机分布。在另一幅图中,一束黑色像素位于一个角落,在图像的其余部分非常稀疏 为了比较两幅

我正在比较随机洒在白色背景上的彩色小颗粒的RGB图像。我目前的方法包括将图像导入Matlab,转换为二值图像,设置阈值,并强制其上方的所有像素为白色。接下来,我将计算黑色像素的百分比。在相互比较图像时,黑色像素百分比的测量非常好;但是,它没有考虑颗粒的分散程度。虽然两个不同图像的黑色百分比可能相同,但图像可能远非相同。例如,假设我有两个图像要比较。两者都显示15%的黑色像素。在一幅图片中,黑色像素在整个图像中随机分布。在另一幅图中,一束黑色像素位于一个角落,在图像的其余部分非常稀疏

为了比较两幅图像,我可以在Matlab中使用什么来量化黑色像素的“分布”程度


我还没能在这件事上下定决心,需要一些帮助。非常感谢您的想法/答案。

我的想法基于理想gad理论/热力学中使用的平均自由程()

首先,必须使用bwconncomp之类的工具分离前景对象

平均自由路径由区域中心之间的平均距离计算。对于n个区域,取所有n/2*(n-1)对,计算所有距离并求平均值。如果平均距离较大,则粒子分布良好。如果它很小,那么对象就靠得很近。
您可能希望将结果的平均值乘以n,然后将其除以边长度,得到一个无量纲数。(与图像大小和粒子数无关)

找到了一个非常类似的问题的答案->


基本上,您可以使用从中心点到每个黑色像素的平均距离作为色散的度量。

这是我将探讨的一个选项。我一直在研究一个叫做熵的函数。我的理解是,这是一个包含在图片中的随机性的统计度量。这与熵一起,正是医生所要求的。非常感谢!