通过我的新作业,我正在寻找一种方法来检测图像上是否存在文本.图像是地图 - 例如可以是谷歌地图.任务是检测街道/城市标签的放置位置.
我知道,OpenCV库有算法,可以检测功能(例如人脸) - Haar分类或猪(方向梯度直方图),但我听说,学习这样的算法过程是相当困难的.
您是否知道可以执行此操作的任何算法,方法或库(检测图像上是否存在文本)?
谢谢,约翰
opencv image image-processing image-recognition computer-vision
任何人都可以描述我如何使用opencv或simplecv在python中实现SWT?
我想即时p字元素EPSHTEIN的论文(检测与描边宽度自然场景文本转换(2010) )在自然图像文本检测.第一步是边缘检测.
我在文本中得到了一些额外的边缘.我应该如何删除它们?
原始图片:
我的边缘检测:

在示例中,您可以在文本 'WHY HURRY'中看到额外的边缘
我在Matlab中尝试过这些步骤:
% contrast enhancement
I_adjust = imadjust(I);
% dilation & erosion
se = strel(ones(3,3));
I_dilate = imdilate(I_adjust, se);
I_final = imerode(I_dilate, se);
% gaussian smoothing
h_mask = fspecial('gaussian');
I_final = imfilter(I_final,h_mask);
figure; imshow(I_final);
BW_canny = edge(I_final,'canny');
figure; imshow(BW_canny);
Run Code Online (Sandbox Code Playgroud)
根据belisarius的建议,我发现均值平移滤波器对于文本区域分割非常有效.现在我在执行Stroke Width变换时遇到了另一个问题(参见Epshtein的论文).
即使对于'S',笔划宽度也适用于像'H''Y'这样的字符,因为如果我们沿着渐变方向前进,相应的边缘通常是恒定的距离.
问题来自像'W'这样的字符.对于第一次上行程的左边缘的一部分,我们得到第二个上行的右边缘作为其对应的边缘.而另一部分,我们获得第一次上冲的右边缘.这引入了'W'区域的笔划宽度的显着变化,导致根据纸张将其称为非文本区域.
有谁能建议任何解决方案?
我想识别信用卡上的数字.更糟糕的是,源图像不能保证高质量.OCR将通过神经网络实现,但这不应该是这里的主题.
当前的问题是图像预处理.由于信用卡可以具有背景和其他复杂图形,因此文本不像扫描文档那样清晰.我用边缘检测(Canny Edge,Sobel)进行了实验,但并没有那么成功.同时计算灰度图像和模糊图像之间的差异(如OCR图像处理中的删除背景颜色所述)不会导致OCRable结果.
我认为大多数方法都失败了,因为特定数字与其背景之间的对比不够强.可能需要将图像分割成块并为每个块找到最佳的预处理解决方案?
您对如何将源转换为可读二进制图像有任何建议吗?边缘检测是要走的路还是我应该坚持基本的颜色阈值?
这是一个灰度阈值方法的示例(我显然对结果不满意):
原始图片:

灰度图像:

阈值图像:

感谢任何建议,Valentin
如果我希望最终图像在数字类型外观上更清晰,我应该放置什么样的滤镜序列.我的意思是只有两种不同的颜色,一种用于纸板,另一种用于粉笔书写.

ocr matlab image-processing computer-vision image-segmentation
最近我接手了旧书/手稿的保存项目.它们数量巨大,近10,000页.我不得不用便携式扫描仪手动扫描它们,因为它们不能在自动书籍扫描仪中扫描.
当我开始在Photoshop中编辑它们时,真正的问题出现了.请注意,它们都基本上是文档(JPG格式),并且这些文档中绝对没有图像.它们使用不同的语言(Oriya),我相信在不久的将来不会有任何OCR软件可用.(如果有,请告诉我.)
为了使这些图像(文档)看起来干净和优雅,我必须裁剪它们,定位它们,稍微增加对比度,用橡皮擦清洁不必要的斑点,等等.我能够在Photoshop中自动化大多数这些过程,但裁剪是我遇到困难的地方.我无法自动裁剪,因为软件无法在img(doc)的某个区域中重新识别文本或内容的存在; 它只是应用赋予它的值进行裁剪.
我想要一个解决方案来自动化这个裁剪过程.我已经想到了这个想法,我不知道它是否足够实用,据我所知,市场上还没有软件能够做到这一点.
对此的可能解决方案:如果工具可以识别图像中文本的存在(这不是非常关键,因为它们都是普通文档图像,其中没有图像,没有图案只是普通矩形)并且可以裁剪它从每一侧的文本边界向外输出,这样它就可以输出没有任何边距的文档图像.其余的任务可以使用Photoshop自动完成,例如为边距添加空格,使用对比度和颜色进行调整,使其更具可读性等.
这是画廊的专辑链接.我可以发布更多样本图片,如果它有用 - 请告诉我.
以下是通过以上链接提供的更大图像样本中的一个示例:

我正试图找一个机器人来识别地面上的一条线并跟随它.
我搜索了互联网,发现了许多线跟踪机器人的例子,但所有这些都使用专门的传感器来检测线路.
为此,我想在机器人上使用相机.
我是计算机视觉领域的新手,所以我想就如何处理这个问题提出一些建议.具体来说,我如何检测与机器人相关的直线及其角度/方向?我如何检测转弯?
更新以下nikies评论:
线看起来如何取决于我,我想在地上放一些亮色的胶带,但我可以使用最简单的任何东西......
相机可以同时采取颜色和黑白图像.
照明和位置可能会有所不同,但我稍后会担心,我只是想知道要开始寻找什么.是否有"共同"的方式来做到这一点?
ocr ×4
opencv ×2
image ×1
imagemagick ×1
matlab ×1
navigation ×1
photoshop ×1
python ×1
robot ×1
simplecv ×1