Python OpenCV 物体识别

使用Python OpenCV的SIFT算法进行物体识别,针对汽车、飞机、摩托车等,网上图片识别准确率约60%,SIFT算法对光照、噪声及小角度旋转有较好鲁棒性。
摘要由CSDN通过智能技术生成

基于Python OpenCV 隐马尔可夫模型 物体识别,汽车飞机摩托车。

网上自己收集的图片进行识别的,准确率可以达到60% 其中通过star 和sift 特征检测。

SIFT算法

来源:
尺度不变特征转换(Scale-invariant feature transform或SIFT)算法是一种特征提取的方法。它在尺度空间中寻找极值点,并提取出其位置、尺度、旋转不变量,并以此作为特征点并利用特征点的邻域产生特征向量。SIFT算法对于光线、噪声、和微小视角改变的容忍度相当高,且对于部分遮挡的物体也有较高的识别相率。
SIFT算法适合于识别旋转度达60度的平面形状,或是旋转度达到20度的三维物体。
SIFT算法对模糊的图像和边缘平滑的图像,检测出的特征点过少,对圆更是无能为力

import os
import warnings
import numpy as np
import cv2 as cv

import hmmlearn.hmm as hl

warnings.filterwarnings('ignore',category=DeprecationWarning)

np.seterr(all='ignore')


def search_objects(directory):
    directory = os.path.normpath(directory)
    if not os.path.isdir(directory):
        raise IOError("the directory '"+ directory + \
                      "' doesn't exist")
    objects ={
   }
    for curdir ,subdirs, files in os.walk(directory):
        for jpeg in (file for file in files if file.endswith('.jpg')):
            path = os.path.join(curdir,jpeg)
            label <
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值