我正在尝试教我的相机成为扫描仪:我拍摄打印文本的照片,然后将它们转换为位图(然后转换为djvu和OCR‘)。我需要计算一个阈值,哪些像素应该是白色的,哪些是黑色的,但是我被不均匀的光照所阻碍。例如,如果中间的像素足够暗,我很可能会在角落里看到一堆黑色的像素。
在相对简单的假设下,我想做的是在阈值之前补偿不均匀的光照。更准确地说:
我不知道如何编写一个算法来做到这一点。我不想退回到最小二乘拟合,因为我想忽略估计照度时的暗像素。我也不知道这个算法是否有效。
所有有用的建议都会得到支持!
编辑:我确实考虑过将图像分成足够大的部分,这样它们看起来仍然像“白色背景上的文本”,但足够小,以便单个部分的照明或多或少是均匀的。我想,如果我对阈值进行插值,这样就不会在子图像边界上出现不连续,我可能会得到一些还算不错的东西。这是一个很好的建议,我将不得不试一试,但它仍然给我留下了一个问题,即在哪里划清白色和黑色之间的界限。更多的想法?
编辑:这里是一些来自GIMP的屏幕转储,显示了不同的直方图和每个直方图的“最佳”阈值(手动选择)。在三个阈值中的两个中,整个图像的单个阈值就足够好了。然而,在第三个例子中,左上角确实需要一个不同的阈值:
发布于 2016-08-29 16:09:29
https://stackoverflow.com/questions/1811800
复制相似问题