簡體   English   中英

在Matlab中變換色彩空間

[英]transformed color space in matlab

變換后的色彩空間(R',G',B')定義如下:

R' = R-mean(R)/sd(R),    
G' = R-mean(G)/sd(G),    
B' = R-mean(B)/sd(B),

其中,在整個圖像上計算出色彩通道C的meansd(standard deviation) ,其中C屬於(R,G,B)。

我必須應用變換后的色彩空間才能找到一對采樣點之間的黑白關系。

假設P(i)Cm是色彩通道厘米屬於(R“ G”,B‘)的值的采樣點厘米, P(j)Cn是顏色通道的值cn屬於(R’ ,采樣點cn G',B'),其中p(i)=(xi,yi)p(j)=(xj,yj)

if P(i)Cm < P(j)Cn  

then 1

 else 0 

其中cmcn可以是(R',R')(R',G'),(R',B'),(G',G'),(G',B')(B',B')

要進行轉換,您可以:

rgb_img = double(rgb_img); %// convert to double
mu = mean( reshape(rgb_img,[],3), 1 ); %// get mean of each channel
sd = std( reshape(rgb_img,[],3), 0, 1); %// get std of each channel
img_transformed = bsxfun( @rdivide, ...
       bsxfun( @minus, rgb_img, permute(mu,[1 3 2]) ),
       permute(sd, [1 3 2]) );

轉換圖像后,就可以訪問像素值

img_transformed( yi, xi, ci )

是位置(xi, yi) ci通道的轉換值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM