2012-01-18 128 views
3

我組合兩個RGB圖像,逐個像素中,每個不同尺寸的,而將它們組合起來我想的一個是在上面,這是在小型化是透明的關於2在大背景,就像透視。我應該做什麼處理?因爲現在..將圖像恢復爲取代像素。我怎樣才能實現這種透明度?我正在使用C++。RGB像素透明度

+6

嗯,基本上它的'newColor = ColorTop *阿爾法+ ColorBottom *(1-α)',其中alpha是0和1之間的不透明度值到底是什麼你題? – PeterT 2012-01-18 15:37:57

+0

您是否嘗試過給圖像的權重因子?如果你做的更小的圖像* 0.5 +大圖像* 1.0以及您可能與透視圖像 – Giel 2012-01-18 15:39:53

+0

你正在尋找術語最終總重量除以它是alpha混合。在彩色(RGB)每個信道混合proportionially基於所述Alpha通道的每個像素中的比例。 – 2012-01-18 15:40:37

回答

2

如所指出的評價,用於混合兩個圖像的基本公式是newColor = ColorTop * alpha + ColorBottom * (1-alpha)

某些圖像每像素包含一個alpha值,但是從簡要描述來看,這聽起來不像您感興趣的情況。您只需要將恆定透明度應用於整個上圖像。讓我們假設你想例如33%的透明度:

alpha = 0.33 
Rnew = (Rtop * alpha) + (Rbottom * (1.0 - alpha)) 
Gnew = (Gtop * alpha) + (Gbottom * (1.0 - alpha)) 
Bnew = (Btop * alpha) + (Bbottom * (1.0 - alpha)) 
+0

謝謝你確切的答案,這正是我一直在尋找。 – AlexandruC 2012-01-21 08:56:08