合成圖像時我試圖兩張照片(有孔的臉在不同的人的面部圖像的頂部認爲體)結合成一個圖像。 頂部圖像有一些半透明的像素和一些完全透明的像素,我想覆蓋它的實體圖像的頂部。腐敗像素的iOS
以下是我在做什麼: 我有一個正確的大小的上下文,並在其上繪製底部圖像,沒有任何alpha(faceImage)。 最重要的是我繪製中有一個透明孔的圖像,與透明膠片的各種級別(coverImage):
UIGraphicsBeginImageContext(view.bounds.size);
[faceImage drawAtPoint:CGPointMake(0, 0) blendMode:kCGBlendModeNormal alpha:1];
[coverImage drawAtPoint:CGPointMake(0, 0) blendMode:kCGBlendModeNormal alpha:1];
UIImage *combinedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
在最終圖像中的結果是相當出人意料:
在像素,其中在頂部圖像沒有透明度最終圖像的正確保存和顯示從頂部圖像像素。 (行)
在其中頂部圖像具有充分的透明度最終圖像被適當地保存並示出了從底部圖像像素的像素。 (行)
在其中頂部圖像具有半透明像素和亮度非常光的像素(最終像素的亮度)突然得到完全透明像素(而不是最終像素沒有透明度,這是頂部像素和底部像素之間的混合)。 (WTF?)
在圖像中可以看到的白色斑點怪異。這些都是成爲完全透明像素的像素(你看到過它們的白色背景):
這是我把頂部的圖像:
這是面子底部圖像:
任何想法可能是造成這個?
TIA
預先相乘,這也解決了我的問題。在這個蹩腳的問題上,我現在頭撞牆了一天。 –