PIL と OpenCV で png 画像を読み込むと、色がずれます。黒と白はそのままですが、茶色が青に変わります。
このサイトは初心者が画像を投稿することを許可していないため、画像を投稿できません。
コードは cv.LoadImageM を使用するのではなく、以下のように記述されています。実際のケースでは生の画像が tcp 経由で受信されるためです。
コードは次のとおりです。
#! /usr/bin/env python
import sys
import cv
import cv2
import numpy as np
import Image
from cStringIO import StringIO
if __name__ == "__main__":
# load raw image from file
f = open('frame_in.png', "rb")
rawImage = f.read()
f.close()
#convert to mat
pilImage = Image.open(StringIO(rawImage));
npImage = np.array(pilImage)
cvImage = cv.fromarray(npImage)
#show it
cv.NamedWindow('display')
cv.MoveWindow('display', 10, 10)
cv.ShowImage('display', cvImage)
cv. WaitKey(0)
cv.SaveImage('frame_out.png', cvImage)
色ずれはどのように修正できますか?