本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

【j2开奖】专栏 | 手机端运行卷积神经网络实践:基于TensorFlow和OpenCV实现文档检测功能(2)

时间:2017-05-31 19:19来源:报码现场 作者:j2开奖直播 点击:
在第一版的技术方案中,负责的同学花费了大量的精力进行各种调优,终于取得了还不错的效果,但是,就像前面描述的那样,还是会遇到检测不出来的场

在第一版的技术方案中,负责的同学花费了大量的精力进行各种调优,终于取得了还不错的效果,但是,就像前面描述的那样,还是会遇到检测不出来的场景。在第一版技术方案中,遇到这种情况的时候,采用的做法是针对这些不能检测的场景,人工进行分析和调试,调整已有的一组阀值参数和算法,可能还需要加入一些其他的算法流程 (可能还会引入新的一些阀值参数),然后再整合到原有的代逻辑中。经过若干轮这样的调整后,我们发现,已经进入一个瓶颈,按照这种手段,很难进一步提高检测效果了。

既然传统的算法手段已经到极限了,那不如试试机器学习 / 神经网络。

无效的神经网络算法

end-to-end 直接拟合

首先想到的,就是仿照人脸对齐 (face alignment) 的思路,构建一个端到端 (end-to-end) 的网络,直接回归拟合,也就是让这个神经网络直接输出 4 个顶点的坐标,但是,经过尝试后发现,根本拟合不出来。后来仔细琢磨了一下,觉得不能直接拟合也是对的,因为:

除了分类 (classification) 问题之外,所有的需求看上去都像是一个回归 (regression) 问题,如果回归是万能的,学术界为啥还要去搞其他各种各样的网络模型

face alignment 之所以可以用回归网络得到很好的拟合效果,是因为在输入 image 上先做了 bounding box 检测,缩小了人脸图像范围后,才做的 regression

人脸上的关键特征点,具有特别明显的统计学特征,所以 regression 可以发挥作用

在需要更高检测精度的场景中,其实也是用到了更复杂的网络模型来解决 face alignment 问题的

YOLO && FCN

后来还尝试过用 YOLO 网络做 Object Detection,用 FCN 网络做像素级的 Semantic Segmentation,但是结果都很不理想,比如:

达不到文档检测功能想要的精确度

网络结构复杂,运算量大,在手机上无法做到实时检测

有效的神经网络算法

前面尝试的几种神经网络算法,都不能得到想要的效果,后来换了一种思路,既然传统的技术手段里包含了两个关键的步骤,那能不能用神经网络来分别改善这两个步骤呢,经过分析发现,可以尝试用神经网络来替换 canny 算法,也就是用神经网络来对图像中的矩形区域进行边缘检测,只要这个边缘检测能够去除更多的干扰因素,那第二个步骤里面的算法也就可以变得更简单了。

神经网络的输入和输出

  

【j2开奖】专栏 | 手机端运行卷积神经网络实践:基于TensorFlow和OpenCV实现文档检测功能

按照这种思路,对于神经网络部分,现在的需求变成了上图所示的样子。

HED(Holistically-Nested Edge Detection) 网络

边缘检测这种需求,在图像处理领域里面,通常叫做 Edge Detection 或 Contour Detection,按照这个思路,找到了 Holistically-Nested Edge Detection 网络模型。

HED 网络模型是在 VGG16 网络结构的基础上设计出来的,所以有必要先看看 VGG16。

  

【j2开奖】专栏 | 手机端运行卷积神经网络实践:基于TensorFlow和OpenCV实现文档检测功能

上图是 VGG16 的原理图,为了方便从 VGG16 过渡到 HED,我们先把 VGG16 变成下面这种示意图:

  

【j2开奖】专栏 | 手机端运行卷积神经网络实践:基于TensorFlow和OpenCV实现文档检测功能

在上面这个示意图里,用不同的颜色区分了 VGG16 的不同组成部分。

  

【j2开奖】专栏 | 手机端运行卷积神经网络实践:基于TensorFlow和OpenCV实现文档检测功能

从示意图上可以看到,绿色代表的卷积层和红色代表的池化层,可以很明显的划分出五组,上图用紫色线条框出来的就是其中的第三组。

  

【j2开奖】专栏 | 手机端运行卷积神经网络实践:基于TensorFlow和OpenCV实现文档检测功能

HED 网络要使用的就是 VGG16 网络里面的这五组,后面部分的 fully connected 层和 softmax 层,都是不需要的,另外,第五组的池化层 (红色) 也是不需要的。

  

【j2开奖】专栏 | 手机端运行卷积神经网络实践:基于TensorFlow和OpenCV实现文档检测功能

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容