本文所使用的SVM分类器,功能主要是来分类和识别图片中的特定颜色特征。我用来提取的是图像的荧光特征区域。在训练前,你首先需要有一张需要训练的图和它对应的标签,训练的图可以是RGBRGBRGB或者BMPBMPBMP图像,标签是一张黑白的二值图,形状与前面图片大小对应,白色区域对应你要提取的原图特征区域。

from sklearn import svm
from PIL import Image
import cv2 as cv
import ossince = time.time()  # 时间戳,用来记录时间
image_path = r'图片路径'
label_path = r'标签路径'
image = cv.imread(image_path)
lable1 = cv.imread(label_path)
s = image.shape #获取图片形状信息,一般为(宽,高,3)
s1 = image.reshape(s[0]*s[1],3) #把图片reshape为(像素点数,3)也就是每个像素点rgb值为一行,便于传入分类器训练
lable2 = lable1.flatten() # 把传入的二值图展平成一维作为标签
clf = svm.SVC(gamma='scale') # 开始训练SVM分类器
clf.fit(s1, lable2)
print('训练用时:',time.time()-since) #得到训练分类器所需时间def clas_data(file_path,save_path): # 批量预测图片for fileName in os.listdir(file_path): #获取需要预测图片的文件名#if fileName.split("-")[-1] =='2.bmp' or fileName.split("-")[-1] =='2.jpg':since = time.time() path = os.path.join(file_path, fileName) # 获得图片路径print(fileName)img = cv.imread(path) # 打开图片sp = img.shape # 获取图片形状s1 = img.reshape(sp[0]*sp[1],3) #reshape,作用和前面一样predict1 = clf.predict(s1) # 预测图片a = predict1.reshape(sp[0],sp[1]) # 得到预测结果,转为二值图a = Image.fromarray(a).convert('P') # 此时是pil的‘I’模式,需要转为'P'模式才能显示出来newFileName = fileName[0:fileName.find(".bmp")]+".png" # 命名图像的后缀改为png格式a.putpalette([0,0,0,128,0,0]) # 输出为(0,1)的标签a.save(save_path+"\\"+newFileName) # 保存图片到指定路径print('分类用时:',time.time()-since) # 记录分类时间file_path = r'图片文件夹路径'
save_path = r'保存预测结果路径'
clas_data(file_path,save_path)

利用SVM分类器批量分类图片颜色信息相关推荐

  1. 利用SVM 实现文本分类的实例

    原文来自:http://blog.csdn.net/zhzhl202/article/details/8197109 之前做过一些文本挖掘的项目,比如网页分类.微博情感分析.用户评论挖掘,也曾经将li ...

  2. 计算线性SVM分类器的分类面方程

    链接:https://www.nowcoder.com/questionTerminal/104e95c6a13d464a86eb6b657cc545c0 这里的正负样本不重要,只是在使用SVM原理计 ...

  3. 【和ChatGPT对话】帮助新手批量提取图片文字信息到文件

    前言和小结 今天的另外一个案例是模拟有一定编程基础(新新手)的电脑工作者,让 ChatGPT 处理一些图片数据,需求复杂一些. 具体任务是帮助识别学生缴费图片的信息,便于复核.然后 -- ChatGP ...

  4. python实现批量修改图片颜色

    原本图片有两个颜色,但是颜色太接近了,看不清楚,所以使用以下程序把所有灰色转换成白色,看的更清晰. import os from PIL import Image# 源目录 MyPath = 'D:/ ...

  5. office word中利用宏编程批量调节图片的亮度和对比度

    Sub '调节亮度和对比度()' 调节亮度和对比度 宏For i = 1 To ActiveDocument.InlineShapes.Count'0~1对应-100%~100%范围ActiveDoc ...

  6. Python批量更改图片颜色,可做证件照底色的更换

    红色部分图片更改为白色 originData:将需要转换的图片放置到这个文件夹中,可自定义文件夹名 resData:转换后结果保存的位置,可自定义文件夹名 def img_path(read_path ...

  7. GEE:利用libsvm()创建一个支持向量机SVM分类器进行土地利用分类

    结果展示: 函数:ee.Classifier.libsvm() 用法 返回 ee.Classifier.libsvm(decisionProcedure, svmType, kernelType, s ...

  8. 使用Palette类提取图片的颜色信息

    原文出处:http://qichaochen.github.io/2014/11/16/105-Android-5.0-Palette-01/ 在Material Design设计中很重要的一部分内容 ...

  9. 利用色光三原色调整图片颜色

    最近学习了android中的图片颜色的处理,现在来总结一下.android中存在三种方式来调整图片的颜色,来达到不同的效果.分别是:利用色光三原色来调整图片颜色,利用颜色矩阵来调整图片颜色,利用调整每 ...

最新文章

  1. docker教程之从一头雾水到不一头雾水(1)
  2. tomcat线程释放时间_聊下并发和Tomcat线程数(错误更正)
  3. Android 高仿新浪微博底部导航栏,实现双击首页Tab,页面的ListView滚动、刷新
  4. 我的Dojo中有一个Mojo(如何编写Maven插件)
  5. java默认值_Java中八种基本数据类型的默认值
  6. 201521123063 《Java程序设计》 第7周学习总结
  7. (45)VHDL实现算术器
  8. 服务器看端口信息命令行,服务器查看端口命令行
  9. mysql修改密码、找回密码
  10. 辗转相除法求最大公约数 php
  11. hive时间函数入门
  12. 青龙面板实现 G D O S 每日自动签到
  13. AndroidStudio工程打包aab文件
  14. 【Gym - 101234G】Dreamoon and NightMarket 【子集中第K大元素】
  15. Java——javac.exe、java.exe、javaw.exe的区别及Java运行机制
  16. (转帖)SpringBoot自定义Starter
  17. Office2016零售版(Retail)转批量授权(VOL)
  18. 深度神经网络在Youtube推荐中的应用--开篇作之一--含部分实用技巧
  19. 笔记本电脑win10系统,麦克风突然没声音了
  20. OFBiz终于起航了

热门文章

  1. HTML中h标签和p标签,HTML 中 br 和 p 标签的区别是什么?
  2. 基于CATIAV6的模型建立
  3. 小白的WordPress网站优化加速之路总结
  4. 《霹雳游侠第四季》(knight Rider Season 4 (Final season))全22集[DVDRip] | 剧集 → 欧美 | VeryCD → 下载
  5. java boss打招呼,Java中几个隐藏“BOSS”
  6. VS2008下设置与VC6.0相同的字体
  7. php 发型,在线发型设计
  8. Android应用开发-小巫CSDN博客客户端UI篇,kotlin安卓开发教程视频
  9. 勒索病毒冲着企业服务器来了 CSO们怕了么?
  10. c语言编程建议和技巧,C语言程序设计学习技巧