3

Python で opencv を処理しようとしていますが、従来の cv lib で記述されたコードをウェブ上で見つけました。

現在はサポートされていないようなので、cv から cv2 への変換表、本、推奨事項などを見たことがある人がいると思います。

例として: http://ioctl.eu/blog/2009/05/13/opencv_homography

import sys, glob
from opencv.cv import *
from opencv.highgui import *


# load homography
homo = cvGetMat( cvLoad(sys.argv[1]) )

## windows:
file_list = glob.glob(sys.argv[2])
## unix:
# file_list = sys.argv[1:]

# apply
for filename in file_list:
    print 'Processing %s...' % (filename)
    im = cvLoadImage(filename, 4)
    out = cvCloneImage(im)
    cvWarpPerspective(im, out, homo)
    (base, ext) = filename.rsplit('.')
    cvSaveImage(base + '_rect.bmp', out)

私はいくつかの変更を処理することに成功しましたが:

import sys, glob
import cv2
#import cv2.cv as cv
#from opencv.cv import *
#from cv.highgui import *


# load homography
homo = cv2.GetMat( cv2.LoadImage(sys.argv[1]) )

## windows:
file_list = glob.glob(sys.argv[2])
## unix:
# file_list = sys.argv[1:]

# apply
for filename in file_list:
    print 'Processing %s...' % (filename)
#    im = cv2.cvLoadImage(filename, 4)
    im = cv2.imRead(filename, 4)
#    out = cvCloneImage(im)
    out = cv2.CloneMat(im)
    cv2.warpPerspective(im, out, homo)
    (base, ext) = filename.rsplit('.')
    #cvSaveImage(base + '_rect.bmp', out)
    cv2.imWrite(base + '_rect.bmp', out)

しかし、「GetMat」は機能しません...

そして、私はより一般的な手順を持ちたいと思います。または、少なくともこの仕事について何度かアドバイスする必要があります。多くの例が古いライブラリに残っているためです。

乾杯、

4

0 に答える 0