matlab怎么把rgb函數(shù)轉變?yōu)轭伾?如何使用MATLAB對圖片的RGB三種顏色進行提???
如何使用MATLAB對圖片的RGB三種顏色進行提???可參考以下方法:1、首先通過函數(shù)對圖片進行讀取并顯示。imagC#與Matlab的混合編程中,圖像的數(shù)據(jù)是如何傳遞的?我做的是用matlab生成圖像
如何使用MATLAB對圖片的RGB三種顏色進行提???
可參考以下方法:
1、首先通過函數(shù)對圖片進行讀取并顯示。
imag
C#與Matlab的混合編程中,圖像的數(shù)據(jù)是如何傳遞的?
我做的是用matlab生成圖像的3維rgb矩陣,回傳給c#。
matlab怎么沿z軸漸變色?
漸變可以用rgb坐標表示 例如紅色color[1 0 0],綠色[0 1 0],黃色[0 0 1],其他顏色改變?nèi)齻€坐標而調和
如何用matlab讀出一個灰度圖像各點灰度值大???
1.調用matlab的圖像讀取函數(shù)imread讀圖片,把圖片放在work文件夾下I imread(樣品.jpg)
2.變?yōu)榛叶葓DG rgb2gray(I)
3.雙擊workspac
image函數(shù)?
image(C) 會將數(shù)組 C 中的數(shù)據(jù)顯示為圖像。C 的每個元素指定圖像的 1 個像素的顏色。生成的圖像是一個 m×n 像素網(wǎng)格,其中 m 和 n 分別是 C 中的行數(shù)和列數(shù)。這些元素的行索引和列索引確定了對應像素的中心。
image(x,y,C) 指定圖像位置。使用 x 和 y 可指定與 C(1,1) 和 C(m,n) 對應的邊角的位置。要同時指定兩個邊角,請將 x 和 y 設置為二元素向量。要指定第一個邊角并讓 image 確定另一個,請將 x 和 y 設為標量值。圖像將根據(jù)需要進行拉伸和定向。
image(CData,C) 將圖像添加到當前坐標區(qū)中而不替換現(xiàn)有繪圖。此語法是 image(C) 的低級版本。
image(XData,x,YData,y,CData,C) 指定圖像位置。此語法是 image(x,y,C) 的低級版本。
image(___,Name,Value) 使用一個或多個名稱-值對組參數(shù)指定圖像屬性。可以使用先前語法中的任意輸入?yún)?shù)組合指定圖像屬性。
image(ax,___) 將在由 ax 指定的坐標區(qū)中而不是當前坐標區(qū) (gca) 中創(chuàng)建圖像。選項 ax 可以位于前面的語法中的任何輸入?yún)?shù)組合之前。
im image(___) 返回創(chuàng)建的 Image 對象。使用im在創(chuàng)建圖像后設置圖像的屬性??梢允褂孟惹罢Z法中的任意輸入?yún)?shù)組合指定此輸出。
示例
顯示矩陣數(shù)據(jù)的圖像
創(chuàng)建矩陣C。顯示 C 中數(shù)據(jù)的圖像。向圖形添加顏色欄以顯示當前顏。
C [0 2 4 6; 8 10 12 14; 16 18 20 22];
image(C)
colorbar
默認情況下,圖像的 CDataMapping 屬性設置為 direct,因此 image 會將 C 中的值解釋為顏的索引。例如,與 C 中最后一個元素 (22) 對應的右下方像素使用顏的第 22 個顏色。通過在創(chuàng)建圖像時將 CDataMapping 屬性設置為 scaled,將值的范圍縮放到當前顏的完整范圍。
image(C,CDataMapping,scaled)
colorbar
也可以使用imagesc函數(shù)縮放這些值,而不是使用image(C,CDataMapping,scaled)。例如,使用 imagesc(C)。
控制圖像位置
放置圖像,使其位于 x 軸上的 5 和 8 之間及 y 軸上的 3 和 6 之間。
x [5 8];
y [3 6];
C [0 2 4 6; 8 10 12 14; 16 18 20 22];
image(x,y,C)
請注意,對應于 C(1,1) 的像素居中顯示在點 (5,3) 上。對應于 C(3,4) 的像素在點 (8,6) 上居中顯示。image 在這兩個點之間定位和定向該圖像的其余部分。
顯示三維真彩色數(shù)組的圖像
創(chuàng)建 C 作為真彩色三維數(shù)組。將該數(shù)組的最后兩頁設為零,以便僅使用紅色。
C zeros(3,3,3);
C(:,:,1) [.1 .2 .3; .4 .5 .6; .7 .8 .9]
C
C(:,:,1)
0.1000 0.2000 0.3000
0.4000 0.5000 0.6000
0.7000 0.8000 0.9000
C(:,:,2)
0 0 0
0 0 0
0 0 0
C(:,:,3)
0 0 0
0 0 0
0 0 0
顯示 C 中數(shù)據(jù)的圖像。
image(C)
創(chuàng)建后修改圖像
繪制一個線條,然后在該線條上方創(chuàng)建一個圖像。返回圖像對象。
plot(1:3)
hold on
C [1 2 3; 4 5 6; 7 8 9];
im image(C);
使圖像半透明,這樣線條就會在圖像中透明呈現(xiàn)。
0.5;
讀取并顯示 JPEG 圖像文件
讀取 JPEG 圖像文件。
C imread();
imread 返回 650×600×3 數(shù)組 C。顯示圖像。
image(C)
向三維視圖中的坐標區(qū)添加圖像
創(chuàng)建一個曲面圖。然后,在曲面下添加一個圖像。image在 xy 平面中顯示該圖像。
Z 10 peaks;
surf(Z)
hold on
image(Z,CDataMapping,scaled)
下圖演示了兩種顏色模型的 C 的相對維度。
NaN 元素的行為未定義。要改用image函數(shù)的低級版本,請將CData屬性設為名稱-值對組。例如,image(CData,C)。
在數(shù)據(jù)類型間轉換
要將索引圖像數(shù)據(jù)從整數(shù)類型轉換為double類型,請加上1。例如,如果X8為uint8類型的索引圖像數(shù)據(jù),則使用以下語法將其轉換為 double 類型:
X64 double(X8) 1;
要將索引圖像數(shù)據(jù)從double類型轉換為整數(shù)類型,請減去 1 并使用round確保所有值都為整數(shù)。例如,如果 X64 為 double 類型的索引圖像數(shù)據(jù),則使用以下語法將其轉換為 uint8:
X8 uint8(round(X64 - 1));
要將真彩像數(shù)據(jù)從整數(shù)類型轉換為double類型,請重新縮放數(shù)據(jù)。例如,如果RGB8為uint8類型的真彩像數(shù)據(jù),則使用以下語法將其轉換為 double:
RGB64 double(RGB8)/255;
要將真彩像數(shù)據(jù)從 double 類型轉換為整數(shù)類型,請重新縮放數(shù)據(jù)并使用 round 確保所有值都為整數(shù)。例如,如果 RGB64 為 double 類型的圖像數(shù)據(jù),則使用以下語法將其轉換為 uint8:
RGB8 uint8(round(RGB64*255));
圖像的高級與低級版本
image 函數(shù)有兩個版本:高級版本和低級版本。如果使用的 image 將 CData 作為輸入?yún)?shù),則使用的是低級版本。否則,您使用的是高級版本。
image 的高級版本在繪圖前調用newplot并設置以下坐標區(qū)屬性:
Layer至 top。該圖像顯示在任何刻度線或網(wǎng)格線前面。
YDir至 reverse。沿 y 軸的值從上到下遞增。要使值從上到正在減少,請將YDir設置為正常。此設置反轉y軸和圖像。查看到[0 90]。image函數(shù)的較低版本不調用newplot,也不設置這些坐標區(qū)域屬性。建議從不同標準格式(如TIFF)的圖形文件中讀取圖像數(shù)據(jù)到MATLAB,使用imread。要將MATLAB圖像數(shù)據(jù)寫入圖形文件,請使用imwrite。Imread和imwrite函數(shù)支持各種圖形文件格式和壓縮方案。