[英]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的mean
和sd(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
其中cm
和cn
可以是(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.