0
私はCGImageRefがルーチンに渡されると、ヒストグラムのCIImage *を生成する関数を持っています。CIAreaHistogram/CIHistogramDisplayFilterの不正確なヒストグラム
ヒストグラムイメージが戻ってきますが、ヒストグラムの左側が圧縮されているように見え、右側が伸びているようです。私はCTMを適用する必要があるのか、またはコードが正しいイメージを返すべきか疑問に思っています。ここで
は関数である。ここでは
- (CIImage*)histogramFromCGImage:(CGImageRef)image
{
CIImage *inputImage = [[CIImage alloc] initWithCGImage:image];
CIVector *inputExtent = [CIVector vectorWithCGRect:inputImage.extent];
NSNumber *inputCount = [NSNumber numberWithInteger:256];
NSNumber *inputScale = [NSNumber numberWithInteger:25];
CIImage *histogramOutputImage = [inputImage imageByApplyingFilter:@"CIAreaHistogram"
withInputParameters:@{
@"inputExtent" : inputExtent,
@"inputCount" : inputCount,
@"inputScale" : inputScale}
];
CIImage *outHistogramImage = [histogramOutputImage imageByApplyingFilter:@"CIHistogramDisplayFilter"
withInputParameters:nil];
return outHistogramImage;
}
を濾過する画像は、次のとおりです。
そしてここでは、私の作成したヒストグラムの画像です:
画像を見るMacプレビューアプリまたはPhotosアプリでは、ヒストグラムの中心に色の大部分が含まれる正しいヒストグラムが表示されます。
ご協力いただきまして誠にありがとうございます。カラーマネージメントを無効に