1''*_*1'' 29 opencv image-processing threshold
什么是快速可靠的阈值图像可能模糊和不均匀亮度的方法?
示例(模糊但亮度均匀):

由于不保证图像具有均匀的亮度,因此使用固定阈值是不可行的.自适应阈值可以正常工作,但由于模糊,它会在特征中产生断裂和扭曲(这里,重要的特征是数独数字):

我也尝试过使用直方图均衡(使用OpenCV的equalizeHist功能).它可以增加对比度而不会降低亮度差异.
我发现的最佳解决方案是将图像按其形态结束(信用到此帖子)来划分,使亮度均匀,然后重新归一化,然后使用固定阈值(使用Otsu算法选择最佳阈值水平):

以下是OpenCV for Android中的代码:
Mat kernel = Imgproc.getStructuringElement(Imgproc.MORPH_ELLIPSE, new Size(19,19));
Mat closed = new Mat(); // closed will have type CV_32F
Imgproc.morphologyEx(image, closed, Imgproc.MORPH_CLOSE, kernel);
Core.divide(image, closed, closed, 1, CvType.CV_32F);
Core.normalize(closed, image, 0, 255, Core.NORM_MINMAX, CvType.CV_8U);
Imgproc.threshold(image, image, -1, 255, Imgproc.THRESH_BINARY_INV
+Imgproc.THRESH_OTSU);
Run Code Online (Sandbox Code Playgroud)
这很有效,但关闭操作非常慢.减小结构元素的尺寸会增加速度但会降低精度.
编辑:根据DCS的建议,我尝试使用高通滤波器.我选择了拉普拉斯滤波器,但我希望Sobel和Scharr滤波器具有相似的结果.滤波器在不包含特征的区域中拾取高频噪声,并且由于模糊而遭受与自适应阈值类似的失真.它也需要与关闭操作一样长.以下是15x15过滤器的示例:

编辑2:根据AruniRC的回答,我使用建议的参数在图像上使用Canny边缘检测:
double mean = Core.mean(image).val[0];
Imgproc.Canny(image, image, 0.66*mean, 1.33*mean);
Run Code Online (Sandbox Code Playgroud)
我不确定如何可靠地自动微调参数以获得连接的数字.

1''*_*1'' 21
使用Vaughn Cato和Theraot的建议,我在关闭图像之前缩小图像,然后将关闭的图像缩放到常规尺寸.我还按比例减小了内核大小.
Mat kernel = Imgproc.getStructuringElement(Imgproc.MORPH_ELLIPSE, new Size(5,5));
Mat temp = new Mat();
Imgproc.resize(image, temp, new Size(image.cols()/4, image.rows()/4));
Imgproc.morphologyEx(temp, temp, Imgproc.MORPH_CLOSE, kernel);
Imgproc.resize(temp, temp, new Size(image.cols(), image.rows()));
Core.divide(image, temp, temp, 1, CvType.CV_32F); // temp will now have type CV_32F
Core.normalize(temp, image, 0, 255, Core.NORM_MINMAX, CvType.CV_8U);
Imgproc.threshold(image, image, -1, 255,
Imgproc.THRESH_BINARY_INV+Imgproc.THRESH_OTSU);
Run Code Online (Sandbox Code Playgroud)
下图显示了3种不同方法的并排结果:
左 - 常规大小关闭(432像素),大小为19内核
中 - 半尺寸关闭(216像素),9号内核
右 - 四分之一大小关闭(108像素),大小为5内核

随着用于关闭的图像的尺寸变小,图像质量劣化,但是劣化不足以影响特征识别算法.即使调整大小,四分之一大小的关闭速度也会略微增加16倍以上,这表明关闭时间大致与图像中的像素数成正比.
关于如何进一步改进这一想法的任何建议(通过进一步降低速度或降低图像质量的恶化)都是非常受欢迎的.
| 归档时间: |
|
| 查看次数: |
18158 次 |
| 最近记录: |