4

cvNormalize を使用して、画像のコントラストを 0 ~ 255 の範囲に引き延ばそうとしています。しかし、出力ピクセル値を印刷すると、いくつかの負の数値がピクセル値として表示されます。問題の原因がどこにあるのかを教えていただければ幸いです。これはコードです:

cvNormalize(srcImage, dstImage, 0, 255, CV_MINMAX );

for ( int pixel = 0; pixel < dstImage->height * dstImage->width; pixel++ ) {
    printf("%d\t",*(dstImage->imageData + pixel));
}
4

1 に答える 1

4

imageDataのタイプは負char*になる可能性があるためcharです (範囲は [-128, 127])。にキャストしてみてくださいunsigned char

ドキュメントを参照してください。

于 2012-07-24T17:39:08.320 に答える