如何不再重复识别——针对海康高空球机

简介: 如何不再重复识别——针对海康高空球机

一.背景:


1.有多个类别需要进行识别


2.相机为单目摄像机


3.相机具备一定的俯仰角旋转和水平方向360°旋转



二.分析背景:


针对需求1:意味着这是一个多目标的识别,在同一视频画面中可能会出现1个及以上的目标;


针对需求2和3:意味着无法精准定位目标物,也就意味着通过识别物的地理位置去完成不重复识别


三.现在状况:


现在的出现的情况:


3.1 多个高空摄像头进行巡航扫描的时候会经常扫描到同一目标,而有的目标(按照目标检测划分是属于该类目标)会多次出现,后经人工审核该目标虽然属于需要识别的类别但是这个是属于例外。


3.2 摄像头扫苗速度快,会对同一目标多次识别,现需要对同一目标只识别一次。



四.解决途径


为了解决这种现象建立如下流程:


4.1 建立特例图像库(后面简称:特例库)


4.2 建立识别图像同特例库比对,当满足某特定条件则认定为识别的图像属于特特例图像


在这个特例库中还可以放入经常在某特定地方误识别的图像,间接提高识别率


五.比对系统的建立


5.1 通过平均哈希算法计算相似度


5.2 通过直方图距离计算识别相似度


5.3 通过感知哈希算法计算相似度


5.4 通过差异哈希算法计算图片相似度


5.5 通过余弦计算图像相似度\



六.测试比对系统


在5.1至5.6的过程中出现了如下几个问题:


6.1 计算相似度过程耗时比较久(耗时最小的为:5.1)无法满足拍到即识别推送过程的最小耗时


6.2 通过比较相似度这个方法并不是很可靠,目前未尝试多中相似度并列判断(主要原因耗时久)


6.3 hog+svm这个方案立马被pass掉了



七.通过模板匹配完成


可参考:juejin.cn/post/707598… 写的一个模板匹配


这个过程中的流程为:


7.1 分别建立某类别的特例库


7.2 对识别到的图像进行与特例库中图像做匹配


7.3 设置匹配阈值,当出现第一个大于设定阈值的值出现时PASS掉识别到的图像\


八.简版demo



def TemplateMatching(predict_Img, TypesName):
    oldImgPath = 'E:/Project/imgs/%s/' % TypesName
    oldImgLine = os.listdir(oldImgPath)
    cuont = 0
    for OldimgName in oldImgLine:
        old_images = Image.open(oldImgPath + OldimgName)
        OldImages = cv2.cvtColor(numpy.asarray(old_images), cv2.COLOR_RGB2BGR)
        method = eval('cv2.TM_CCOEFF_NORMED')  # eval 
        # 模板匹配
        NewImages = cv2.cvtColor(numpy.asarray(predict_Img), cv2.COLOR_RGB2BGR)
        res = cv2.matchTemplate(NewImages, OldImages, method)
        # 寻找最值
        min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
        if  (min_val + max_val)/2 > 0.125
            print("与图库中相似:", predict_Img)
            cuont += 1
            break
    if cuont == 0:
        print("认定无相似的:", predict_Img)
    return cuont

继续改进吧......

相关文章
|
7月前
|
机器学习/深度学习 传感器 算法
双轨线识别
双轨线识别
57 1
|
机器学习/深度学习 人工智能 TensorFlow
检测脸部情绪有多难?10行代码就可以搞定!
检测脸部情绪有多难?10行代码就可以搞定!
|
传感器 人工智能 监控
卡塔尔世界杯出现了半自动越位识别技术、动作轨迹捕捉等黑科技。
卡塔尔世界杯出现了半自动越位识别技术、动作轨迹捕捉等黑科技。
卡塔尔世界杯出现了半自动越位识别技术、动作轨迹捕捉等黑科技。
|
安全 定位技术 计算机视觉
睫毛长度精准复刻!扫描面部数据,用特殊技术和3D打印制作人脸,“画皮”直呼内行
睫毛长度精准复刻!扫描面部数据,用特殊技术和3D打印制作人脸,“画皮”直呼内行
248 0
|
人工智能 算法 数据库
彩色条形码轻松解决盲人购物难题!无需对焦,识别速度快12倍,还能发出过敏警告
彩色条形码轻松解决盲人购物难题!无需对焦,识别速度快12倍,还能发出过敏警告
173 0
|
传感器 机器人 芯片
恢复哆啦A梦听觉!实装蝗虫耳朵,生物机器人可以“听到”声音,还能进行区分和响应
恢复哆啦A梦听觉!实装蝗虫耳朵,生物机器人可以“听到”声音,还能进行区分和响应
182 0
|
人工智能 运维 监控
如何编程实现多人口罩佩戴识别?
疫情当前,阿里云视觉智能开放平台联合阿里云函数计算紧急推出了基于视觉AI分析的“人脸口罩检测”算法服务,通过对接该服务可快速构建监控系统并可统计人员的口罩佩戴情况,实现疫情防控的AI化,数字化。
1495 0
如何编程实现多人口罩佩戴识别?
火星漫游车着陆点最终确定,将于2021年于奥克夏平原开启探索之旅
奥克夏平原,是一个在过去很有可能拥有大片水域的区域,或许可以帮助科学家找到火星生命的蛛丝马迹。
398 0
|
人工智能 安全 大数据
AI救生员上岗!使用水下摄像头跟踪游泳者,杜绝溺水
夏天到了,也到了游泳的季节,为了避免后院以及公共泳池出现溺水事故,房主和泳池运营商考虑使用人工智能技术来提供额外的安全保护。