ピクセルにアクセス
画素値を直接いじろうとしてつまった。
CvScalarフィールドにアクセスするインターフェースが見つからない\(^o^)/
調べてみたら、IPLをPILに変換して画素値をあれこれする方法があるらしい。
ということで試してみた。IPL→PIL→画素値をいじる→IPLって処理の流れ。
import sys import Image from opencv import * if __name__ == '__main__': filename = "test.jpg" win_name = "window" if len(sys.argv) > 1: filename = sys.argv[1] image = cvLoadImage(filename) if not image: print "Error loading image '%s'" % filename sys.exit(-1) pil_image = ipl_to_pil(image) for i in range(image.width): for j in range(image.height): pixel = pil_image.getpixel((i, j)) pil_image.putpixel((i, j), (255 - pixel[0], 255 - pixel[1], 255 - pixel[2])) ipl_image = pil_to_ipl(pil_image) cvNamedWindow(win_name, CV_WINDOW_AUTOSIZE) cvShowImage(win_name, ipl_image) cvWaitKey(0)
こんなんでいいのだろうか・・・。
よくわからん。