展开

关键词

mser 最大稳定极值区域(文字区域定位) 附完整C代码

mser 的全称:Maximally Stable Extremal Regions 第一次听说这个时,是来自当时部门的一个同事, 提及到他的项目用它来做文字区域的定位,对这个做了一些优化。 自那时起就有一块石头没放下,想要找个时间好好理理这个。 学习一些它的一些思路。 因为一般我学习的思路:3个做, 第一步,编写demo示例。 第二步,进行移植或效果改进。 第三步,进行性能优化。 然后在这三个过程中,不断来回地验证,实测。 任何事情,一下子囫囵吞枣,容易呛到。 找了不少资料,mser这方面的资料还挺少。 err_msg, err); exit_code = 1; } /* quit */ return(exit_code); } 有两种模式 可参照《图片文档倾斜矫正 附完整c代码》中判断是否为文本图片的方式进行思路的改进。 效果图例: ? ? ? ? 以上,再一次抛砖引玉。 若有其他相关问题或者需求也可以邮件联系俺探讨。

2K70

MSER+NMS检测图像中文本区域

MSER就是一种检测图像中文本区域的方,这是一种传统,所谓传统,是相对于现在大行其道的机器学习技术来说的,就准确率来说,MSER对文本区域的检测效果自然是不能和深度学习如CTPN、Pixellink MSER全称叫做最大稳定极值区域(MSER-Maximally Stable Extremal Regions),该是2002提出的,主要是基于分水岭的思想来做图像中斑点的检测。 该可以用来粗略地寻找图像中的文字区域,虽然思想简单,但要做到效果又快又好还是需要一定基础的,好在opencv直接提供了该的接口,它使用了一种比作者要快的实现方式,有兴趣的可以看这篇文章: = cv2.MSER_create() # 得到mser对象 regions, _ = mser.detectRegions(gray) # 获取文本区域 hulls = [cv2.convexHull 这就要用到NMS了。

8910
  • 广告
    关闭

    什么是世界上最好的编程语言?丨云托管征文活动

    代金券、腾讯视频VIP、QQ音乐VIP、QB、公仔等奖励等你来拿!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    基于分割思想的文本检测

    使用人工特征 文本检测领域常见的人工特征有两种:SWT和MSER,这些方的效率比滑窗更高,精度也更好。 SWT思路:图片中的文本都具有一致宽度的线条。 MSER的思路:单个文本内部的像素值不会有太大差异, 类似于分水岭 其计步骤如下: 从0到255,选择不同的阈值对图片进行二值化; 记录下不同阈值下的二值化图像的各个连通域的面积变化; 寻找在一定阈值范围内 ,面积变化较为稳定的连通域; 根据人工规则从这些稳定连通域中筛选出文本区域; opencv里面有MSER的实现,可以直接拿来用。 除这两种以外,还可以尝试使用一些通用的局部特征子,我曾经用过harris角点,在文档和证件场景下的效果还是不错的。 2. 深度学习文本检测 深度学习在误检方便表现比传统方要好。 所以EAST中在NMS之前添加了检测框融合的操作,称之为LocalNMS。

    74720

    基于OpenCV的多位数检测器

    有多种检测数字位置的方。比如可以利用简单的图像形态学操作(例如二值化,腐蚀,膨胀)来提取图像中的数字区域。但是,由于存在诸如阈值,内核大小等调整参数,因此这些处理方式不具有普遍性。 数字定位使用最大稳定的外部区域(MSER)方完成,该方用作稳定的特征检测器。MSER主要用于图像内的斑点检测。斑点是像素的连续集合,其外边界像素强度高于内边界像素强度(给定阈值)。 MSER的运行时复杂度较低,为O(nlog(log(n))),其中n是图像上像素的总数。该对于模糊和缩放也很鲁棒。这使其非常适合提取文本/数字。 在某些间隙中,要么本地化器无正常工作(未检测到数字1的位置),要么检测器发生故障($被检测为5)。 ? 结论 我们希望该博客被证明是了解多位数检测管道如何工作的良好起点。 如果此模型无正常运行。大家可以收集自己的数据并微调已训练的模型。 SVHN链接:https://github.com/penny4860/SVHN-deep-digit-detector

    38710

    科普时间:OCR是人工智能的基础之一

    OCR是指光学设备(扫描仪、数码相机等)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方将形状翻译成计机文字的过程,其本质就是利用光学设备去捕获图像并识别文字,将人眼的能力延伸到机器上 文本检测首先要从图像中切割出可能存在的文字,即候选连通区域,目前被采取最多的方MSER(最大平稳极值区域)。 当然,也有团队在此基础上开发出了自己的一套,比如微软研究院在传统检测方ER(极值区域)和MSER基础之上采用了对比极值区域CER(Contrasting Extremal Region),CER是跟周围的背景有一定对比度的极值区域 ,在低对比度的图像上比MSER效果更好,而且获得的候选连通区域数量远小于ER,提高了的效率,并且,为了提高所获得连通区域的质量,微软又增加一个环节去增强CER。 最后,微软采取了一套基于浅层神经网络的文字/非文字分类,进一步提高了对于连通区域字符的辨认率。 在此基础之上,微软研究院的成果也得到了世界的验证。

    1.4K60

    pySLAM:多深度学习特征集成SLAM

    5] (improvements of ORB-SLAM2 to ORB detector) SIFT[6] SURF[7] KAZE[8] AKAZE[9] BRISK[10] AGAST[11] MSER descriptor[40] D2-Net[41] DELF[42] Contextdesc[43] LFNet[44] R2D2[45] 关于作者 本项目的作者是Luigi Freda,于2007年在罗马大学获得计机系统工程博士学位 ,目前是一名自由职业者,目前从事计机视觉、机器人和机器学习。 www.margaritachli.com/papers/ICCV2011paper.pdf [11] AGAST: http://www.i6.in.tum.de/Main/ResearchAgast [12] MSER

    70520

    【Dev Club 分享】深度学习在 OCR 中的应用

    通常这类方利用文字颜色、亮度、边缘信息进行聚类的方式来快速分离文字区域与非文字区域,而以MSER和SWT为代表的连通域分析方在自然场景文字检测中表现优异,在获得高鲁棒性的同时性能也比滑动窗口的形式提高不少 我们首先基于MSER(最大稳定极值区域)的方来设计我们的检测方案,如下图。 ? 由于MSER基于分水岭迭代的方式来寻找候选框,能有效提取候选文字区域的同时也容易产生非常多的非文字区域。 不过车牌的检测很成熟了,可以先检测到车牌,做方向矫正后再送识别。车牌银行卡这种文字类别相对很少,不到100个,一般传统的模板匹配的方也可以达到比较好的效果。 而本文介绍的通用图片的文字识别需要应对6000多个汉字还有英文数字等,对网络的要求更高 Q11:问题:除了基于CNN的识别方,有没有尝试过其他的深度学习。 手机应该是可以直接从聊天记录获得文本,不需要从图像里去检测和识别文字,主要涉及到的是NIL方向的,比如分词。

    1.3K80

    OpenCV 3.1.0中特征检测与描述接口改动

    中有很多代码重构和性能提高,还有API接口的整合,以Feature2D及其扩展模块的特征检测与描述为例,在OpenCV2.4.x中可以通过FeatureDetector::create("特征名称");方创建一个检测器 但是到了OpenCV3.1.0中如果你还是这么用,VS预编译就会报告说FeatureDetector::create()方不存在,原因是OpenCV在最新的3.1.0版本中已经去掉了该方,对所有特征提取的方进行了重新梳理并且出现了几种新的特征检测与描述方 现总结如下(不敢保证没有遗漏,但是已经够多了) - BRISK: detector + descriptor - ORB: detector + descriptor - MSER: detector 由此可以,在OpenCV 3.1.0中各种特征检测与描述方明显更多,给大家选择的余地更大,其中一些方都是近几年的新发研究论文实现。

    80380

    一篇文章就梳理清楚了 Python OpenCV 的知识体系

    边缘检测的一般步骤: 滤波:滤出噪声対检测边缘的影响 ; 增强:可以将像素邻域强度变化凸显出来—梯度子 ; 检测:阈值方确定边缘 ; 常用边缘检测子: Canny 子,Canny 边缘检测函数 高级部分-分水岭及图像修补 掌握分水岭的原理,掌握核心函数 cv2.watershed() 。 可以扩展补充图像修补技术及相关函数 cv2.inpaint(),学习完毕可以尝试人像祛斑应用。 GrabCut cv2.grabCut(); 漫水填充 cv2.floodFill(); Harris 角点检测 cv2.cornerHarris(); Shi-Tomasi 角点检测 cv2 OpenCV 应用部分之运动物体跟踪与人脸识别 了解何为运动物体检测,OpenCV 中常用的运动物体检测方有背景减、帧差、光流,跟踪常用的有 meanShift, camShift,粒子滤波 meanShift 跟踪 cv2.meanShift(); CamShift 跟踪 cv2.CamShift()。

    18830

    模式识别新研究:微软OCR两层优化提升自然场景下的文字识别精度

    在确定候选连通区域阶段,微软亚洲研究院团队在传统检测方ER(Extremal Region,极值区域)和MSER(Maximally Stable Extremal Region,最大平稳极值区域)基础之上采用了对比极值区域 ER,候选范围大大缩小,提高了的效率。 为了提高所获得的候选连通区域的质量,微软亚洲研究院团队决定增加一个环节去增强CER。 提取出来的候选连通区域结果示例 阶段②:基于浅层神经网络的文字/非文字分类 当获得了高质量的候选连通区域,就需要对其中的字符进行分辨,确定其是否为文字或非文字,微软亚洲研究院团队提出了一套基于浅层神经网络的文字 /非文字分类,比以往的更加有效。

    1.2K50

    机视觉开源工具中的瑞士军刀—Dlib最新高级特性教程

    (欢迎关注“我爱计机视觉”公众号,一个有价值有深度的公众号~) OpenCV是计机视觉开源工具中妇孺皆知的,但Dlib绝对是这几年快速上升的一颗新星,它并不追求大而全,但它实现的每一个模块和特性,都几乎是高质量开源的典范 》的目标检测报告,作者从滑动窗口讲到HOG检测器及其优化,并介绍了Dlib中基于图像金字塔的CNN目标检测,其速度很快且相比于SSD其对小目标检测性能更好,并分享了影响目标检测性能的一些因素,比如训练数据数量和质量及超参数的优化等 ——训练HOG检测器; 002——运行HOG检测器; 003——为人脸特征点检测制作人脸图像数据和XML文件; 004——训练人脸特征点检测模型; 005——运行人脸特征点检测模型; 006——匈牙利 ; 027——霍夫变换; 028-034——通过霍夫变换定位图像中的纸张; 035——通过mbd方定位视频中旋转的指尖陀螺; 036——通过MSER进行文本检测; 037——训练RBF核的SVM的二类问题 ,自动优化最优参数(Dlib中的AutoML); 038——求和运的缓存SIMD优化; 039——多线程数据加载; 040——使用CUDA进行矩阵运加速。

    27610

    VO视觉里程计

    3 VO工作原理 计相对运动 ? 恢复两帧之间的运动轨迹 ? 对m个姿态进行优化,局部优化轨迹(使用姿态图或捆集调整BA) ? 4 如何估计相对运动? ? Direct Image Alignment:有稠密,半稠密,稀疏三种方,求像素的灰度值差最小化。 ? ? ? 稀疏-基于特征点的方 提取特征和特征匹配(+RANSAC) 最小化重投影误差 ? 最小化再投影误差 流行:8点和5点 ? 3D-to-2D 三维结构运动与图像的对应 最少涉及3对关联点(+1对点用于消除歧义点) 最小化再投影误差找到解决方案: 流行:p3p ? 最小化3D-3D欧几里得距离: 流行:用于全局配准,ICP用于局部优化或捆集调整(BA) ? ? 5 VO模块流程 ? Coner vs Blob 角点定义为一条或多条边的交点。 E.g., MSER, LOG, DOG (SIFT), SURF, CenSurE ? ? ?

    1.5K50

    机视觉 OpenCV Android | 特征检测与匹配 之 Feature2D中的检测器与描述子

    而在OpenCV本身包含的feature2d模块中也包含了几个非常有用的特征检测器与描述子, 其所支持的特征点检测器(FeatureDetector)如下: FAST=1 STAR=2 ORB=5 MSER 1.ORB检测器与描述子 ORB(Oriented FAST and Rotated BRIEF)是OpenCV实验室于2011年开发出来的一种新的特征提取, 相比较于SIFT与SURF, ORB ); 2.BRISK检测器与描述子 BRISK(Binary Robust Invariant Scalable Keypoint)特征检测与描述子是在2011年由几位作者联合提出的一种新的特征提取 SIFT之后, 具有尺度不变性与旋转不变性领域的再一次突破, 它是KAZE特征提取的加速版本; 其原理有别于前面提到的几种方, 其是通过正则化PM方程与AOS(加性子分裂)方来求解非线性扩散 AKAZE的原理本身比较复杂,笔者所读的书中亦无详细解说, 感兴趣的小伙伴阅读相关论文去深入了解。

    1.1K20

    Scene Text Localization & Recognition Resources

    Text Detection paper [2014-ECCV] Robust Scene Text Detection with Convolution Neural Network Induced MSER

    41320

    OCR技术浅析

    预处理阶段中包含了三步: 定位图片中的文字区域,而文字检测主要基于连通域分析的方,主要思想是利用文字颜色、亮度、边缘信息进行聚类的方式来快速分离文字区域与非文字区域,较为流行的两个分别是:最大极值稳定区域 (MSER)及笔画宽度变换(SWT),而在自然场景中因受到光照强度、图片拍摄质量和类文字背景的干扰,使得检测结果中包含非常多的非文字区域,而目前从候选区域区分出真正文字区域主要两种方,用规则判断或轻量级的神经网络模型进行区分 受光照和拍摄质量的影响,全局二值化难以设置统一的阈值,而自适应二值化易受到阴影及模糊边界的干扰。所以在这边尝试过许多方,测试下来未发现在任何情形下效果都满足要求的方。 在给定O序列情况下,通过维特比,找出最优序列S: 传统OCR冗长的处理流程以及大量人工规则的存在,使得每步的错误不断累积,而使得最终识别结果难以满足实际需求。接下来讨论基于深度学习的OCR。 文本行检测,其又可分为水平行文字检测与倾斜文字行检测。这里主要介绍下Tian提出CTPN,其框架如下图。

    3K10

    机视觉、机器学习相关领域论文

    SURF[4] [OpenSURF][MatlabWrapper] ·         AffineCovariant Features [5] [Oxford project] ·         MSER FactorAnalyzers[Code] ·           Learning3-D Scene Structure from a Single Still Image[Project] 十、机器学习

    34720

    docker部署基于nodejs的vue应用

    #指定我们的基础镜像是node,版本是v8.0.0 指定的基础image可以是官方远程仓库中的,也可以位于本地仓库 FROM node:8.0.0 #指定维护者的信息 MAINTAINER mser

    1.8K40

    相关产品

    • 腾讯云小微数智人

      腾讯云小微数智人

      IP 虚拟人(IP Virtual Human,IVH)运用了语音交互、数字模型生成等多项 AI 技术,让 IP 虚拟人的口型与发音一致、表情及动作自然拟人。IP 虚拟人支持 AI 合成虚拟形象播报视频和实时语音交互两大类使用场景,其中虚拟形象播报能力支持输入文本生成 AI 合成的音视频文件,广泛运用于媒体、教育、会展服务等场景;语音交互场景支持与用户进行实时语音互动,广泛运用于客服、助理等场景。

    相关资讯

    热门标签

    扫码关注云+社区

    领取腾讯云代金券