• 深度学习与模式识别之项目整理


    深度学习与模式识别之项目整理

    3158861394@qq.com

    http://blog.csdn.net/luojun2007

    作者:Luogz


    声明:


           本人一直从事图像处理,模式识别专业方向。该专业具有非常广的应用范围。我对这个专业有非常大的兴趣。本人承接各种与图像处理相关的项目,如您须要请联系我,谢谢!!


    图像处理方向大概有下面等应用场景:

    1) 智能交通

    2) 日常智能产品应用

    3)医学

    4)工业

    5)航空

     

            以上领域。我基本都有涉及。熟悉图像增强、图像重建、人脸检測、人脸性别分类、年龄预计、人脸识别、人流量统计、缺陷检測、基于Adaboost的物体检測、多类物体分类、智能交通、视频背景建模、车牌识别、遗留物检測、视频质量诊断、美图,OCR字符识别、汽车定位、行人检測等等。

    熟悉的算法:Adaboost训练器、svm、神经网络、深度学习算法(卷积神经网络)、贝叶斯算法、ELM、Gabor特征提取、LBP特征、sift特征、小波等。


    以下介绍一些曾经做过的项目。

    文件夹

    、麻将牌实时检測

    二、生物及医学应用分析

    三、人数统计

    四、基于深度学习的字符识别

    五、人脸性别分类

     

    一、麻将牌实时检測


            对摄像头拍摄的图片进行实时处理。输出麻将的定位区域,因为我们的视频是动的,比市场上的固定摄像头的操作难非常多。所以检測难度会加大,可是经过測试,设计的算法具有较高的检測率和文档性。算法是:机器学习 +先验信息融合的处理机制。

    对各种环境下的视频进行測试,综合检測率在95%以上。

    1、定位麻将



    2、找出每张牌之间的逻辑位置关系


                         


         实例一


    3、识别部分

    看视频检測效果(请点击链接):http://v.youku.com/v_show/id_XODEyMDc0NjA0.html


    二、生物及医学应用分析


    1.    生物发酵分析


            生物发酵过程中。须要人时常去观察发酵过程到哪个阶段?这浪费人力和物力,假设能用图像处理算法处理发酵监控摄像头返回的图像,那么就能够机器监控整个发酵过程。这个我曾经做过的一个小项目,主要是用来分析发酵图的数据,并画出发酵过程中的走势状态图。

    依据以上信息来推断发酵过程是否达到了最佳时间。界面例如以下:




    实例二


    2.    医学3D图分析


    分析三维图像中感兴趣区域。并加以分析。得出你想要的数据。

    1、   对象:3D图形(血管)三视图(平面投影图像)中荧光绿色标注曲线(初步识别的血管中轴)的空间中轴坐标。

    2、   输出结果:荧光绿色曲线(经初步识别的血管中轴)处理后的三维空间坐标。

    3、   具体要求: 1.要求实现过程的具体步骤说明。

                                  2.关键步奏须要图像便于验证。

                                  3.空间坐标曲线如为非连续线状,需取中线。

    注意:

    最后得到的曲线应和原始三视图荧光绿曲线一样是连续曲线。没有尖锐毛刺(噪音),没有识别错误及识别脱漏。

    其实的目的是为了对血管中轴(血管骨架)的空间坐标进行识别。

    荧光绿色曲线是初步识别的血管中轴。



     


         实例三


             处理过程中提取血管的图像时。往往会得到断断续续的血管,例如以下:


                                                                          


                                         x, y轴平面投影切割图                                                3*3分区处理                                                 断线重连结果


            以上处理过程用到数据拟合,曲线平滑等方向的一些知识。Matlab提供了强大的曲线拟合算法包含rubustfit、最小二乘、三次样条插值等。可是我是在vs2010上实现该程序的。因此并没有调用这这些函数。

           程序最后的输出是:血管在3维中的坐标位置信息。


    三、人数统计


            我做过人流统计和车流统计,可是把这个拿出来的原因是,“教室人数统计”主要大家都比較熟悉。“教室人数统计”…..你可能想到的能够利用adaboost检測人脸再数个数。这样的方法是简单,可是不有用,你能够保证一定能够检測到人脸吗?我是利用Adaboost框架训练自己的人头检測XML。注意不是人脸-----可是这么做了。也有可能会检測错误,因此我再利用如今的热门算法,深度学习来对检測到的待选目标进行分类。然后推断出Adaboost检測的待选目标是否是人头,最后统计人头总数。

    大家都知道深度学习的一个巨大优点就是:不用自己去苦苦提取特征,网络会依照它的设计原理自己主动提取特征,比方CNN(卷积神经网络),通过局部感受野、共享权值和亚取样来得到特征,而且该特征对位移、缩放、扭曲具有鲁棒性

    详细參考:http://blog.csdn.net/celerychen2009/article/details/8973218




    视图3.1


            深度学习的效果和样本的丰富程度以及网络的深度有关系。可是并非网络的层数越多越好,深度学习的拥护者都是,不充分的深度反而影响效果。

    Adaboost +深度学习框架的人数统计的效果图例如以下:




                                                                                                                       实例四


               须要看视频效果的点击:http://v.youku.com/v_show/id_XODExODk3ODAw.html


    四、基于深度学习的字符识别


           OCR识别技术,如今已经比較成熟了。可是还是值得关注。有一位大牛提出了一种手写字符识别框架,叫“LeNet-5系统”效果和paper等见这是利用深度学习的CNN来实现原始LeNet-5结构不包括输入层就已经是7层网络结构。眼下基本都用简化的“LeNet-5系统”,该系把下採样层和卷积层结合起来。避免了下採样层过多的參数学习过程,相同保留了对图像位移。扭曲的鲁棒性。

    其网络结构图例如以下所看到的:


    视图4.1


           当年美国大多数银行就是用它来识别支票上面的手写数字的。可以达到这样的商用的地步。它的准确性可想而知。

    毕竟眼下学术界和工业界的结合是最受争议的。他的效果图例如以下:




    视图4.2


           我依据这样的设计方案,实现了该LeNet-5系统”。可是我的使用场景是扑克牌识别,并且应用在手抓牌上,不是眼下常使用的方法——把牌摆在牌桌上。

    对照效果例如以下:




     视图4.3   摆拍方式




            实例五   手抓牌

           

    五、人脸性别分类


             人脸性别分类,我主要设计了两种方案:一、Gabor(多尺度。多方向特征提取)+ PCA + LDA + SVM。二、dense-Sift + LBP + PCA + LDA + SVM

    这两种设计方案各有千秋,可是共同点就是效果都还行。

    1W张室外人脸进行測试,前者能够达到87%~92%的识别率。后者能够达到93%~94%的识别率。至于我说两种各有特点的原因是。Gabor特征抗光照变化的能力比sift特征强,通常情况下Gabor特征方案比sift特征方案识别率低一些,可是对光线变化比較大的环境,Gabor方案还能够维持叫好的效果,可是sift特征方案的识别率速度降到60%~70%。因此看应用场景来採用哪种方案?     


              

    a                                                                                       b

    实例六  性别分类

      

    本人长期外接项目和程序设计,假设你有须要,请联系我:QQ3158861394.

    诚信为您服务!


  • 相关阅读:
    Unity赛车游戏之移动
    Unity3d5.0 新UI之2048
    关于Unity3d粒子系统的小发现(天堂3技能释放)
    偶然发现的Unity3d,两点之间的距离计算。
    JS函数声明的问题
    手写原生ajax
    xmlHttp.readyState的五种状态
    常见问题之数组去重
    Backbone中 View之间传值的解决办法
    JavaScript函数后面加不加括号的区别
  • 原文地址:https://www.cnblogs.com/brucemengbm/p/6718999.html
Copyright © 2020-2023  润新知