python-3.x - 水平计数加工织物中的白色簇

标签 python-3.x opencv image-processing

我对织物 Material 进行了处理,得到如下图所示的图像:

原始图片:

enter image description here

处理后的图像:

enter image description here

现在,我想找到连续的白色簇的数量。如果所有簇都是均匀且完全水平的,我将运行一个循环来计算强度的上升和下降,以找到簇的数量,但事实并非如此。如果我通过上述方法取几行的中值/平均值,所需的答案相差很大。

有没有办法在行不需要完全水平的约束下准确地计算它们?或者遵循任何方法会使任务更简单吗?

最佳答案

我还在进一步考虑这个问题,但目前看来,ImageMagick 在消除图像倾斜方面做得相当不错。只需在终端(或 Windows 上的命令提示符)中:

 convert fabric.jpg -deskew 50% result.jpg

enter image description here

下面是一个动画,展示了将图像从 -20 度旋转到 +20 度时会发生什么情况,在右侧我显示了每行的投影(行总和)。当左侧变为水平时,观察最右侧的列:

enter image description here

关于python-3.x - 水平计数加工织物中的白色簇,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56585981/

相关文章:

python-3.x - 如何使用 Python 将行转换为 excel(.xls) 中的列?

python - namedtuple 字段名称 : single string or sequence?

c++ - 使用复制赋值构造函数和迭代元素来修改 Mat 之间是否存在显着的性能差异?

c++ - 创建您自己的线性滤波器

java - 给定开始和结束矩形时如何创建矩形路径

matlab - 用于光纤对准的傅里叶变换

python - 通过python在字典内的字典中打印数字

Python - 在一本字典中对正数和负数进行排序

c++ - Opencv张量积

C++ 图像处理 : Uniform Smoothing Operation Makes Image Darker