图片识别

  • 训练文件
  • 识别图像
  • LocalBinrayPatterns
  • recognize
  • 运行结果展示
  • 后续

训练文件

在项目中建立training文件夹,在其中存放你想要训练的图像,其中的小文件夹就是你训练生成的图像名称,可自行更改。

识别图像

建立testing文件夹,在其中存放你想要识别的图像。

LocalBinrayPatterns

class LocalBinrayPatterns:def __init__(self,numPoints,radius):self.numPoints = numPointsself.radius = radiusdef describle(self,image,esp=1e-7):lbp = feature.local_binary_pattern(image,self.numPoints,self.radius,method="uniform")(hist,_) = np.histogram(lbp.ravel(),bins=np.arange(0,self.numPoints + 3),range=(0,self.numPoints + 2))hist = hist.astype("float")hist /= (hist.sum() + esp)return hist

recognize

ap = argparse.ArgumentParser()
ap.add_argument("-t","--training",default="./training",help="path to the training images")
ap.add_argument("-e","--testing",default="./testing",help="path to the testing images")
args = vars(ap.parse_args())desc = LocalBinrayPatterns(24,8)
data = []
labels = []for imagePath in paths.list_images(args["training"]):image = cv2.imread(imagePath)gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)hist = desc.describle(gray)labels.append(imagePath.split(os.path.sep)[-2])data.append(hist)model = LinearSVC(C=100.0,random_state=42)
model.fit(data, labels)for imagePath in paths.list_images(args["testing"]):

完整程序

运行结果展示





可以很明显的看出,提前存放的文件夹的图像训练成了相关文件夹名字的素材,而当检测到相关图片时,显示相关的名称。

后续

如果想了解更多物联网、智能家居项目知识,可以关注我的项目实战专栏。
或者关注公众号。

编写不易,感谢支持。

使用LBP+SVM,训练识别给定的测试图像相关推荐

  1. LBP+SVM 活体识别

    针对上一篇"深度摄像头-活体识别"的改进版 大致思路: 1.RGB人脸检测 2.同步人脸位置到深度图矩形框 3.裁剪矩形框,提取LBP特征 4.训练SVM模型. 5.集成模型到de ...

  2. 基于LBP纹理特征计算GLCM的纹理特征统计量+SVM/RF识别纹理图片

    作者 | Raini 出品 | 北京图特摩斯科技有限公司 (thutmose.cn) 说在前头: 局部特征检测方法 斑点Blob检测,LoG检测 , DoG,DoH检测,SIFT算法,SUFT算法 边 ...

  3. SVM 训练--在训练集上acc为94% 在测试集上为70%

    用SVM 训练的时候: 出现的问题是: Error: specified nu is infeasible 带有下标的赋值维度不匹配. 百度到的答案:赋值维度不匹配...说明等号两边的大小不一致,导致 ...

  4. LBP特征的实现及LBP+SVM分类

    前言 LBP这篇博客发表了有一年多的时间了,当时是为了研究生毕业论文实验而写的,后来稍微总结了一下写了这篇博客,一年多时间里,大家提了一些宝贵的修改意见,这两天将代码重构了一下,结构更加简洁清晰,速度 ...

  5. 基于 LBP + SVM 胡萝卜开裂检测算法

    胡萝卜开裂检测算法 l  LBP+SVM 算法: 1.       算法描述: LBP+SVM对胡萝卜开裂检测算法的主要思想是,首先,利用LBP对开裂胡萝卜与非开裂胡萝卜进行特征提取,将提取的特征利用 ...

  6. 第十九课.基于sklearn的SVM人脸识别

    目录 数据集 确定人脸的类别标记 划分训练集和测试集与训练 实验为基于sklearn的SVM人脸识别,使用 SVM 算法对戴眼镜的人脸和不戴眼镜的人脸进行分类,从而完成 识别戴眼镜的人脸 的任务:实验 ...

  7. 【机器学习】LBP+SVM实现特征检测

    初学机器学习,参考HOG SVM 车辆检测(https://www.cnblogs.com/louyihang-loves-baiyan/p/4658478.html).LBP特征原理(https:/ ...

  8. 【叶片识别】基于matlab LBP植物叶片识别【含Matlab源码 1702期】

    一.LBP简介(附lunwen) 第一章 引言 植物在我们的身边随处可见,它们从产生发展进化到现在,其间经历了漫长的岁月.地球上的植物种类繁多.数量浩瀚,它们是生物圈的重要组成部分,在维持整个生物界的 ...

  9. svm性别识别及HOG特征原理浅析

     HOG特征原理主要参考http://blog.csdn.net/abcjennifer/article/details/7365651 HOG即histogram of oriented gra ...

最新文章

  1. RNA-seq最新利器——全长转录组测序
  2. Cisco路由器的Flash和NVRAM
  3. centos7.3 编译安装 git 2.13
  4. 为什么会用这个工具的产品经理,越来越值钱?
  5. 轻量级的jQuery表单校验插件: Happy.js
  6. 给Python IDLE添加行号显示
  7. IA-32 System-Level Registers and Data Structures
  8. powershell自动化操作AD域、Exchange邮箱系列(1)——powershell 简介
  9. php对象、面向对象
  10. 堡垒机应用发布服务器是干嘛的_支持Web UI数据库审计和敏感数据国密算法加密,JumpServer堡垒机v2.5.0发布丨Release Notes...
  11. LVS负载均衡的几种模式和算法
  12. 微软应用商店有哪些值得推荐的应用
  13. [原创]K8_Delphi源码免杀系列教程
  14. ROS安装教程(ubuntu18.04+melodic版本)
  15. Spire.Office for .NET 7.9.2 去掉license.dll注册功能
  16. solidworks拉伸凸台基体/基体
  17. #大话设计模式之适配器模式#
  18. 验证苹果电子邮件地址服务器出现问题,iPhone之验证您的电子邮件地址问题解决...
  19. 基于Go语言Echo+Vue+ElementUI的OA办公系统
  20. 955 互联网公司白名单来了!这些公司月薪20k,没有996!福利榜国内大厂只有这家!

热门文章

  1. Focal Loss 的Pytorch 实现以及实验
  2. ghostwin10系统后不小心重新分区了,其它分区的资料如何找回
  3. Debit and Credit Memo
  4. 读取遥感图像中遇到的问题集锦
  5. Mobile Lua 6.5 发布,MoSync 的 Lua 移植版本
  6. Delphi下DLL调用以及共享数据库连接
  7. 狂人日记学习 之一 CSS布局的目的
  8. flutter上拉抽屉效果 flutter拖动抽屉效果
  9. Android研发中对String的思考(源码分析)
  10. 周鸿祎IOT发布会思考