我需要將CMYK圖像轉換爲灰度CMYK圖像。起初,我認爲我可以使用與RGB - >灰度轉換相同的方法,如(R + G + B)/ 3或max(r,g,b)/ 2 + min(r,g,b)。但不幸的是,這對CMYK不利,因爲CMY和K是多餘的。而黑cmyk(0,0,0,255)將成爲64.我應該只使用灰度CMYK像素
int grayscaled = max((c + m + y)/3, k)
或者它可能會更棘手?我不確定,因爲CMYK實際上是一個冗餘的顏色模型,並且可以用不同的方式編碼相同的顏色。
如果你想獲得一個灰度圖像,輸出是不是隻是K通道?我不太瞭解CMYK,所以如果我錯了,請向我解釋。 – Hawken 2013-08-24 17:24:54
@Hawken不,最大CMY是黑色的,所以有很多方法可以用CMYK表示顏色。我的意思是(1,1,1,0)和(0,0,0,1)理論上是相同的黑色。 – AvrDragon 2013-08-27 12:24:09
是真的,但如果它們是相同的顏色,只使用黑色墨水將節省您的墨水不是嗎?某些打印機在做灰度時也使用不同的黑色墨水;也許只有使用'K'頻道可能觸發這個? – Hawken 2013-09-05 01:55:41