我需要為影像著色,如下例所示。從檔案加載影像后,我需要在記憶體中應用這種轉換。

過濾器的顏色必須是可定制的。我也有可用的ImageEn庫,我開始使用該CastColorRange函式進行一些測驗,但這并沒有給我預期的結果
var
FIMageEn: TImageEn;
...
procedure TTest.ApplyColorMask(const ARGBFilter: TRGB);
begin
FIMageEn.Proc.CastColorRange(FProcOverrideColorStartRange, // BeginColor
FProcOverrideColorEndRange, // EndColor
ARGBFilter); // Filter
end;
上面顯示的那段代碼的問題是該函式需要一個rgb格式的顏色范圍,但是由于影像都互不相同,我不知道要設定什么范圍
uj5u.com熱心網友回復:
您不需要為此使用第三方庫。
看起來所需的轉換是將每個像素的色調 (H) 設定為固定值,同時保留飽和度 (S) 和值(HSV 顏色模型中的 V)。
因此,您只需要一些 RGB<->HSV 轉換函式。就個人而言,我使用

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/471635.html
下一篇:如何修改正在粘貼的文本?
