-3

ハフ変換を使用すると問題が発生します。テストの虹彩画像で唯一の瞳孔を検出したい。コードは次のとおりです。

import cv2
from cv2 import cv
import numpy as np
import os

directory = os.listdir("/home/joker26/Scrivania/casia/test")
numero_file = len(directory)
for file in directory:
    print file
file_iride = raw_input("File(riportare anche estensione): ")
path = "/home/joker26/Scrivania/casia/test/%s" %(file_iride)
image_iride = cv2.imread(path)
output = image_iride.copy()
image_test = cv2.imread(path, cv2.CV_LOAD_IMAGE_GRAYSCALE)

image_test = cv2.Canny(image_test,5,70,apertureSize=3)
image_test = cv2.GaussianBlur(image_test, (7,7), 1)

cerchi = cv2.HoughCircles(image_test, cv2.cv.CV_HOUGH_GRADIENT,50, 100, 50,300)
if cerchi is not None:
    cerchi = np.round(cerchi[0,:]).astype("int")
    for (x,y,raggio) in cerchi:
        cv2.circle(output, (x,y),raggio,(255,0,0),4)
    cv2.imshow("Image test", np.hstack([image_iride,output]))
    cv2.waitKey()

結果は次のとおりです。 http://i.stack.imgur.com/LJOE9.png

4

2 に答える 2

0

虹彩の代わりに瞳孔を検出するポイントは何ですか? どちらも目の一部です。ただし、エラーはテストデータ内にあります。

あなたは、何千枚もの人の目の写真であると私が推測するテストデータを使用しています。これで、コンピューターはこれらの写真の内容を認識することを学習し、トレーニング データが完全な目である場合、完全な目を表示します。欠陥はコードにあるのではなく、コードがアクセスしているデータにあります。

于 2016-07-13T20:43:06.440 に答える