基于图像的室内装修风格分类系统(二)---提取颜色特征
来源:互联网 发布:核动力印钞机 知乎 编辑:程序博客网 时间:2024/04/28 18:39
(一)先记下一些当时看的提取颜色特征的文章
http://blog.csdn.net/passball/article/details/5204132//文章主要讲的是特征的定义以及各种特征提取和匹配的方法http://blog.sina.com.cn/s/blog_adf19c8c0101hvhh.html//(Matlab)实现HSV非等间隔量化--相似判断:欧式距离--输出图片
(二)附上当时做的笔记:
1.显示图像的颜色直方图
I=imread(‘lena.jpg’); %%读取图像
R=I(:,:,1);
G=I(:,:,2);
B=I(:,:,3);
figure,imhist(R); %%显示直方图
title(‘R’);
figure,imhist(G);
title(‘G’);
figure,imhist(B);
title(‘B’);
A = rgb2hsv(B) 将RGB颜色空间(B)转化为HSV颜色空间(A)
2.定义函数
function [输出变量] = 函数名称(输入变量)
% 注释
函数体
3.matlab编程为cell模式:以%%开头
4.
save example A B %将变量A,B存在文件example.mat里面
save(‘D:\example.mat’ ,’A’, ‘B’, ‘C’…) %保存到指定文件夹
save example %将当前所有变量存储到example.mat里面
读取:
load example
load example A
5.将数据存储到本地磁盘上
xlswrite(‘D:\writeExcel.xls’,w(:,249:257),’data’);%数据存储至D盘根目录下
//D:\writeExcel.xls 为存储路径及文件名
// w为需要存储的数据
//data为存储至Excel中的表单名
(三)附上提取颜色特征的代码:colorFeature.m(用的是颜色直方图)
%% I. 清空环境变量clc;clear;%提取了所有训练集图片的特征,w:70*256 w存储70张训练集图片的256维颜色特征%group:70*1 保存图像的分类信息 %将w和group存储在example.mat里面,用save函数 代码里没有包括,当时直接在命令窗口输入的。也可以直接用我已经生成的example.mat% 循环读入图像A=dir('F:\文件\dataset\家装图片集\所有图片\*.jpg'); %批量读取文件w=zeros(70,256);for k=1:size(A) B=strcat('F:/文件/dataset/家装图片集/所有图片/',A(k).name); %w(k,257)=str2num(A(k).name(1)); Image=imread(B);%endrs=size(Image);M=rs(1);N=rs(2);% 计算每一幅图像的颜色直方图[h,s,v] = rgb2hsv(Image);H = h; S = s; V = v;h = h*360;%将hsv空间非等间隔量化:% h量化成16级;% s量化成4级;% v量化成4级;for i = 1:M for j = 1:N if h(i,j)<=15||h(i,j)>345 H(i,j) = 0; end if h(i,j)<=25&&h(i,j)>15 H(i,j) = 1; end if h(i,j)<=45&&h(i,j)>25 H(i,j) = 2; end if h(i,j)<=55&&h(i,j)>45 H(i,j) = 3; end if h(i,j)<=80&&h(i,j)>55 H(i,j) = 4; end if h(i,j)<=108&&h(i,j)>80 H(i,j) = 5; end if h(i,j)<=140&&h(i,j)>108 H(i,j) = 6; end if h(i,j)<=165&&h(i,j)>140 H(i,j) = 7; end if h(i,j)<=190&&h(i,j)>165 H(i,j) = 8; end if h(i,j)<=220&&h(i,j)>190 H(i,j) = 9; end if h(i,j)<=255&&h(i,j)>220 H(i,j) = 10; end if h(i,j)<=275&&h(i,j)>255 H(i,j) = 11; end if h(i,j)<=290&&h(i,j)>275 H(i,j) = 12; end if h(i,j)<=316&&h(i,j)>290 H(i,j) = 13; end if h(i,j)<=330&&h(i,j)>316 H(i,j) = 14; end if h(i,j)<=345&&h(i,j)>330 H(i,j) = 15; end endendfor i = 1:M for j = 1:N if s(i,j)<=0.15&&s(i,j)>0 S(i,j) = 0; end if s(i,j)<=0.4&&s(i,j)>0.15 S(i,j) = 1; end if s(i,j)<=0.75&&s(i,j)>0.4 S(i,j) = 2; end if s(i,j)<=1&&s(i,j)>0.75 S(i,j) = 3; end endendfor i = 1:M for j = 1:N if v(i,j)<=0.15&&v(i,j)>0 V(i,j) = 0; end if v(i,j)<=0.4&&v(i,j)>0.15 V(i,j) = 1; end if v(i,j)<=0.75&&v(i,j)>0.4 V(i,j) = 2; end if v(i,j)<=1&&v(i,j)>0.75 V(i,j) = 3; end endend%将三个颜色分量合成为一维特征向量:L = H*Qs*Qv+S*Qv+v;Qs,Qv分别是S和V的量化级数, L取值范围[0,255]%取Qs = 4; Qv = 4for i = 1:M for j = 1:N L(i,j) = H(i,j)*16+S(i,j)*4+V(i,j); endend%计算L的直方图for i = 0:255 Hist(i+1) = size(find(L==i),1); w(k,i+1)=Hist(i+1);endend%将所有图片的类别(a,b,c)...存到group中group=sym('[a;a;a;a;a;a;a;a;a;a;a;a;a;a;b;b;b;b;b;b;b;b;b;b;b;b;b;b;c;c;c;c;c;c;c;c;c;c;c;c;c;c;d;d;d;d;d;d;d;d;d;d;d;d;d;d;e;e;e;e;e;e;e;e;e;e;e;e;e;e]')
0 0
- 基于图像的室内装修风格分类系统(二)---提取颜色特征
- 基于图像的室内装修风格分类系统(三)---提取纹理特征
- 基于图像的室内装修风格分类系统(五)---完成图像分类
- 基于图像的室内装修风格分类系统(四)---分类器
- 基于图像的室内装修风格分类系统(一)---项目介绍
- 图像颜色特征提取
- 图像颜色特征提取
- 图像颜色特征提取
- 图像特征提取(颜色特征)
- 基于颜色特征提取
- 颜色特征提取(二)------颜色矩
- (知识整理)图像颜色特征提取
- 图像特征提取(颜色,纹理,形状)
- 基于SVM-PP的图像特征提取
- 基于颜色特征的图像检索
- 基于颜色特征的图像识别
- 特征提取--基于局部二值模型(LBP)的特征提取
- 目标检测的图像特征提取之(四)OpenCV中BLOB特征提取与几何形状分类
- 常用正则表达式
- Hdu 4804 Campus Design(给定一个图,0是不能放的,然后现在有1X1和1X2方块,要求铺满该图,使得1X1使用次数在C到D之间,1X2次数随便,问有几种放法)
- Android优秀开发资源
- POJ 3271:Dining(EK最大流)
- mysql 用户管理
- 基于图像的室内装修风格分类系统(二)---提取颜色特征
- 文件类型
- IOS block简单使用
- 初涉java(集合类)
- 架构设计调优
- hdu 2243 考研路茫茫——单词情结(AC自动机+矩阵)
- 快速排序
- IOS NSTimerr
- HTML5与JQuery混合应用:选座功能简单实现