導航:首頁 > 凈水問答 > matlabhsv顏色過濾

matlabhsv顏色過濾

發布時間:2022-02-04 13:39:17

① 詢問Matlab中hsv顏色表示的問題

rgb2hsv
功能:
轉化RGB值為HSV顏色空間。
語法:
hsvmap = rgb2hsv(rgbmap)
HSV = rgb2hsv(RGB)
相關命令:
hsv2rgb, rgbplot

HSV解釋
HSV色彩模型從CIE三維顏色空間演變而來,它採用的是用戶直觀的色彩描述方法
,它跟孟塞爾顯色系統的 HVC 球型色立體較接近。(如圖HSV 色彩六棱錐)只不
過HSV色彩模型是一個倒立的六菱錐,只相當於孟塞爾球型色立體的一半(南半
球),所以不含黑色的純凈顏色都處於六菱錐頂面的一個色平面上。在HSV六菱
錐色彩模型中,色相(H)處於平行於六菱錐頂面的色平面上,它們圍繞中心軸V
旋轉和變化,紅、黃、綠、青、藍、品紅六個標准色分別相隔60度。色彩明度(
B)沿六菱錐中心軸V從上至下變化,中心軸頂端呈白色(V = 1),底端呈黑色
(V = 0),它們表示無彩色系的灰度顏色。色彩飽和度(S)沿水平方向變化,
越接近六菱錐中心軸的色彩,其飽和度越低,六邊形正中心的色彩飽和度為零(
S = 0),與最高明度的V = 1相重合,最高飽和度的顏色則處於六邊形外框的邊
緣線上(S = 1)。
(1) 色相、飽和度與六棱錐色平面(H和 S)
色平面(H、S)的基礎是CIE色度圖的x、y色平面
(2) 明度與六棱錐中軸色(v)
色明度(V)的基礎是 CIE三維顏色空間的亮度因素Y。

② Matlab中對HSV空間進行二值化其H.S.V分量閾值怎樣與灰度值對應

MATLAB中hsv顏色空間h分量的范圍是 [0,1),不包括1。 其中, h=0的時候,就相當於0度; h=0.5的時候,就相當於180度; h=1的時候,就相當於360度(雖然不能取這個值)。

③ 關於matlab中hsv2rgb的用法,給詳細解釋下,下面用hsv2rgb之前那些數據處理有什麼用啊

首先說明下,hsv2rgb(H,S,V)的調用有誤,正確的調用方法為hsv2rgb(h)
(不知道是你抄寫錯誤還是原程序的錯誤?)
當h為m*3的矩陣時,hsv2rgb是把hsv調色板轉換成rgb調色板。
當h為m*n*3的矩陣時,hsv2rgb是把hsv圖像轉換成rgb圖像。

什麼是調色板呢?調色板是一個存貯各種顏色值的列表。
這樣索引圖像只需存貯列表中的索引就可以了,具體的顏色值只需要到顏色列表中去查找。

但是表示顏色的方法有很多種。
最常見的RGB,第一個分量表示紅色,第二個綠色,第三個藍色。
RGB雖然方便計算機處理,但對人並不直觀
HSV則對人很直觀,H表示顏色,S表示飽和度(可以理解為純度),V為亮度。例如「有點濃的暗紅色」對應成HSV即「H為紅色,S比較高(純),V比較低(暗)」。
H,S,V三個變數的取值均在0和1之間。

程序解釋如下:

V=V-min(V(:));
V=V/max(V(:));
V=.25+0.75*V;
是將V的值映射到[0.25,1]之間

M=M-min(M(:));
M=M/max(M(:));
是將M映射到[0,1]之間

H為0表示底色為紅色。

開始提到函數的調用是錯誤的,那麼正確的調用是什麼呢?我的理解應該如下:
h(:,:,1)=H(:,:);
h(:,:,2)=S(:,:);
h(:,:,3)=V(:,:);
RGB=hsv2rgb(h);
figure,imshow(RGB,[]);
特別地,如果令h(:,:,2)=1,h(:,:,3)=1則圖像是純深紅色。

④ matlab圖像處理:怎樣提取HSV圖像的H分量怎樣判斷一副圖像的顏色

你提取H分量的代碼沒錯,在0-1之間是因為已經歸一化了

⑤ matlab中hsv顏色空間的h分量值范圍是0到1嗎

MATLAB中hsv顏色空間h分量的范圍是 [0,1),不包括1。

其中,

h=0的時候,就相當於0度;

h=0.5的時候,就相當於180度;

h=1的時候,就相當於360度(雖然不能取這個值)。

MATLAB[1]是美國MathWorks公司出品的商業數學軟體,用於演算法開發、數據可視化、數據分析以及數值計算的高級技術計算語言和互動式環境,主要包括MATLAB和Simulink兩大部分。

MATLAB是matrix&laboratory兩個詞的組合,意為矩陣工廠(矩陣實驗室)。是由美國mathworks公司發布的主要面對科學計算、可視化以及互動式程序設計的高科技計算環境。

它將數值分析、矩陣計算、科學數據可視化以及非線性動態系統的建模和模擬等諸多強大功能集成在一個易於使用的視窗環境中,為科學研究、工程設計以及必須進行有效數值計算的眾多科學領域提供了一種全面的解決方案,並在很大程度上擺脫了傳統非互動式程序設計語言(如C、Fortran)的編輯模式,代表了當今國際科學計算軟體的先進水平。

MATLAB和Mathematica、Maple並稱為三大數學軟體。它在數學類科技應用軟體中在數值計算方面首屈一指。MATLAB可以進行矩陣運算、繪制函數和數據、實現演算法、創建用戶界面、連接其他編程語言的程序等,主要應用於工程計算、控制設計、信號處理與通訊、圖像處理、信號檢測、金融建模設計與分析等領域。

MATLAB的基本數據單位是矩陣,它的指令表達式與數學、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,FORTRAN等語言完成相同的事情簡捷得多,並且MATLAB也吸收了像Maple等軟體的優點,使MATLAB成為一個強大的數學軟體。在新的版本中也加入了對C,FORTRAN,C++,JAVA的支持。

⑥ 如何用matlab繪制HSV顏色空間如下圖

clear;clc;
h=linspace(0,1,19);
s=linspace(0,1,9);
v=linspace(0,1,11);
h=h([1:end-3])*2*pi;
[H,S]=meshgrid(h,s);
surf(S.*cos(H),S.*sin(H),H-H+1,hsv2rgb(cat(3,H/2/pi,S,H-H+1)));
holdon
[H,V]=meshgrid(h,v);
surf(V.*cos(H),V.*sin(H),V,hsv2rgb(cat(3,H/2/pi,H-H+1,V)));
[S,V]=meshgrid(s,v);
surf(S.*V.*cos(h(1)),S.*V.*sin(h(1)),V,hsv2rgb(cat(3,S-S+h(1)/2/pi,S,V)));
surf(S.*V.*cos(h(end)),S.*V.*sin(h(end)),V,hsv2rgb(cat(3,S-S+h(end)/2/pi,S,V)));
axisoffequal
view(60,15)
camzoom(2)

⑦ matlab hsv空間篩選其中符合h,s,v符合條件的元素並計算其飽和度均值

%可以用rgb2hsv函數來轉換例如:

t=imread('a.bmp');

HSV=rgb2hsv(t);

H=HSV(:,:,1);%提取64×64×3維矩陣中的64×64×1矩陣
S=HSV(:,:,2);%提取64×64×3維矩陣中的64×64×2矩陣
V=HSV(:,:,3);%提取64×64×3維矩陣中的64×64×3矩陣

⑧ 在matlab中用rgb2hsv函數將RGB圖像轉化為hsv模型後,h,s,v的值域應該為多少,為何我得到的v值達到200

H表示v表示亮度,你可以用一副全白圖片轉換至HSV,就可以得到v的最大值;再用一副全黑的圖像轉換至HSV,就可以得到v的最小值。理論上講V的取值范圍是0~1,這是歸一化後的結果。但是貌似並不是所有的matlab版本對圖像處理的范圍都是0~1之間,有的版本是0~255,具體哪幾個 版本我就不記得了。

⑨ 求助:Matlab曲線線型和顏色設置問題:如何過濾掉一條曲線的一部分

(matlab)plot畫圖的顏色線型
y 黃色 · 點線
m 粉紅 ○ 圈線
c 亮藍 × ×線
r 大紅 + +字線
g 綠色 - 實線
b 藍色 * 星形線
w 白色 : 虛線
k 黑色 -.
-- 點劃線
matlab6.1線形:
[ + | o | * | . | x | square | diamond | v | ^ | > | < | pentagram | hexagram ]
square 正方形
diamond 菱形
pentagram 五角星
hexagram 六角星

用法

grid 打開網格線 -- 虛線
hold on 命令用於在已畫好的圖形上添加新的圖形
1 x=0:0.001:10; % 0到10的1000個點(每隔0.001畫一個點)的x座標
y=sin(x); % 對應的y座標
plot(x,y); % 繪圖
註:matlab畫圖實際上就是描點連線,因此如果點取得不密,畫出來就成了折線圖,請試驗之
2 Y=sin(10*x);
plot(x,y,'r:',x,Y,'b') % 同時畫兩個函數
3 若要改變顏色,在座標對後面加上相關字串即可:
x=0:0.01:10;
plot(x,sin(x),'r')
4 若要同時改變顏色及圖線型態(Line style),也是在坐標對後面加上相關字串即可:
plot(x,sin(x),'r*')
5 用axis([xmin,xmax,ymin,ymax])函數來調整圖軸的范圍
axis([0,6,-1.5,1])
6 MATLAB也可對圖形加上各種註解與處理:(見上表)
xlabel('x軸'); % x軸註解
ylabel('y軸'); % y軸註解
title('餘弦函數'); % 圖形標題
legend('y = cos(x)'); % 圖形註解
gtext('y = cos(x)'); % 圖形註解 ,用滑鼠定位註解位置
grid on; % 顯示格線
7畫橢圓
a = [0:pi/50:2*pi]'; %角度
X = cos(a)*3; %參數方程
Y = sin(a)*2;
plot(X,Y);
xlabel('x'), ylabel('y');
title('橢圓')
8 繪制函數 在0 ≤ x ≤ 1時的曲線。
x=0:0.1:1
y=x.*exp(-x) %為什麼用點運算?若不用會怎樣
plot(x,y),xlabel('x'),ylabel('y'),title('y=x*exp(-x)')
9 畫出衰減振盪曲線 與它的包絡線 及 。t 的取值范圍是[0, 4π] 。
t=0:pi/50:4*pi;
y0=exp(-t/3);
y=exp(-t/3).*sin(3*t);
plot(t,y,'-r',t,y0,':b',t,-y0,':b') % -r表示紅色實線,:b表示藍色點線,看上表
grid
10 在同一個畫面上建立幾個坐標系, 用subplot(m,n,p)命令;把一個畫面分成m×n個圖形區域, p代表當前的區域號,在每個區域中分別畫一個圖,如
x=linspace(0,2*pi,30); y=sin(x); z=cos(x);
u=2*sin(x).*cos(x); v=sin(x)./cos(x);
subplot(2,2,1),plot(x,y),axis([0 2*pi -1 1]),title('sin(x)')
subplot(2,2,2),plot(x,z),axis([0 2*pi -1 1]),title('cos(x)')
subplot(2,2,3),plot(x,u),axis([0 2*pi -1 1]),title('2sin(x)cos(x)')
subplot(2,2,4),plot(x,v),axis([0 2*pi -20 20]),title('sin(x)/cos(x)')

⑩ matlab的GUI中如何統計一個區域顏色的H值(HSV模型)

MATLAB中hsv顏色空間h分量的范圍是
[0,1),不包括1.
其中,
h=0的時候,就相當於0度;
h=0.5的時候,就相當於180度;
h=1的時候,就相當於360度(雖然不能取這個值).

閱讀全文

與matlabhsv顏色過濾相關的資料

熱點內容
電鍍銅廢水處理多少錢 瀏覽:260
油煙凈化器和風機有什麼區別 瀏覽:101
奧克斯凈水器如何拆管 瀏覽:760
tmtd產品廢水處理 瀏覽:661
污水氯離子揮發 瀏覽:818
反滲透膜即熱飲水機 瀏覽:818
杭州回油濾芯多少錢 瀏覽:529
只用ro膜做凈水器 瀏覽:620
空氣濾芯出水少怎麼辦 瀏覽:549
提升泵分哪幾種 瀏覽:391
樹脂盆批發 瀏覽:340
BW30400反滲透膜進水要求 瀏覽:28
大嶺山污水處理多少錢 瀏覽:699
純水機的水發綠是怎麼回事 瀏覽:819
什麼是反滲透空氣潔凈度 瀏覽:117
水務集團污水處理公司 瀏覽:319
可清洗濾芯為什麼可以清洗掉臟東西 瀏覽:561
撫順勝利開發區污水處理廠 瀏覽:661
天際線污水要不要和飲用水一起 瀏覽:227
樹脂補牙喝水吃飯 瀏覽:672