利用SVM分类器批量分类图片颜色信息
本文所使用的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分类器批量分类图片颜色信息相关推荐
- 利用SVM 实现文本分类的实例
原文来自:http://blog.csdn.net/zhzhl202/article/details/8197109 之前做过一些文本挖掘的项目,比如网页分类.微博情感分析.用户评论挖掘,也曾经将li ...
- 计算线性SVM分类器的分类面方程
链接:https://www.nowcoder.com/questionTerminal/104e95c6a13d464a86eb6b657cc545c0 这里的正负样本不重要,只是在使用SVM原理计 ...
- 【和ChatGPT对话】帮助新手批量提取图片文字信息到文件
前言和小结 今天的另外一个案例是模拟有一定编程基础(新新手)的电脑工作者,让 ChatGPT 处理一些图片数据,需求复杂一些. 具体任务是帮助识别学生缴费图片的信息,便于复核.然后 -- ChatGP ...
- python实现批量修改图片颜色
原本图片有两个颜色,但是颜色太接近了,看不清楚,所以使用以下程序把所有灰色转换成白色,看的更清晰. import os from PIL import Image# 源目录 MyPath = 'D:/ ...
- office word中利用宏编程批量调节图片的亮度和对比度
Sub '调节亮度和对比度()' 调节亮度和对比度 宏For i = 1 To ActiveDocument.InlineShapes.Count'0~1对应-100%~100%范围ActiveDoc ...
- Python批量更改图片颜色,可做证件照底色的更换
红色部分图片更改为白色 originData:将需要转换的图片放置到这个文件夹中,可自定义文件夹名 resData:转换后结果保存的位置,可自定义文件夹名 def img_path(read_path ...
- GEE:利用libsvm()创建一个支持向量机SVM分类器进行土地利用分类
结果展示: 函数:ee.Classifier.libsvm() 用法 返回 ee.Classifier.libsvm(decisionProcedure, svmType, kernelType, s ...
- 使用Palette类提取图片的颜色信息
原文出处:http://qichaochen.github.io/2014/11/16/105-Android-5.0-Palette-01/ 在Material Design设计中很重要的一部分内容 ...
- 利用色光三原色调整图片颜色
最近学习了android中的图片颜色的处理,现在来总结一下.android中存在三种方式来调整图片的颜色,来达到不同的效果.分别是:利用色光三原色来调整图片颜色,利用颜色矩阵来调整图片颜色,利用调整每 ...
最新文章
- docker教程之从一头雾水到不一头雾水(1)
- tomcat线程释放时间_聊下并发和Tomcat线程数(错误更正)
- Android 高仿新浪微博底部导航栏,实现双击首页Tab,页面的ListView滚动、刷新
- 我的Dojo中有一个Mojo(如何编写Maven插件)
- java默认值_Java中八种基本数据类型的默认值
- 201521123063 《Java程序设计》 第7周学习总结
- (45)VHDL实现算术器
- 服务器看端口信息命令行,服务器查看端口命令行
- mysql修改密码、找回密码
- 辗转相除法求最大公约数 php
- hive时间函数入门
- 青龙面板实现 G D O S 每日自动签到
- AndroidStudio工程打包aab文件
- 【Gym - 101234G】Dreamoon and NightMarket 【子集中第K大元素】
- Java——javac.exe、java.exe、javaw.exe的区别及Java运行机制
- (转帖)SpringBoot自定义Starter
- Office2016零售版(Retail)转批量授权(VOL)
- 深度神经网络在Youtube推荐中的应用--开篇作之一--含部分实用技巧
- 笔记本电脑win10系统,麦克风突然没声音了
- OFBiz终于起航了
热门文章
- HTML中h标签和p标签,HTML 中 br 和 p 标签的区别是什么?
- 基于CATIAV6的模型建立
- 小白的WordPress网站优化加速之路总结
- 《霹雳游侠第四季》(knight Rider Season 4 (Final season))全22集[DVDRip] | 剧集 → 欧美 | VeryCD → 下载
- java boss打招呼,Java中几个隐藏“BOSS”
- VS2008下设置与VC6.0相同的字体
- php 发型,在线发型设计
- Android应用开发-小巫CSDN博客客户端UI篇,kotlin安卓开发教程视频
- 勒索病毒冲着企业服务器来了 CSO们怕了么?
- c语言编程建议和技巧,C语言程序设计学习技巧