こんにちは
私は今dlibを使って目とその周囲を撮影した顔写真から抽出するアプリを作ろうとしているのですが、コードを組むまでは完了し、それをアプリ化する段階でやり方がわからなくなってしまいました。
コードは以下のようなものです。
Python
1def main(): 2 img = cv2.imread("画像のパス”) 3 img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) 4 size = (256,256) 5 detector = dlib.get_frontal_face_detector() 6 rects = detector(img, 1) 7 PREDICTOR_PATH = os.path.join("data","shape_predictor_68_face_landmarks.dat") 8 predictor = dlib.shape_predictor(PREDICTOR_PATH) 9 if len(rects) >0: 10 for rect in rects: 11 pxys = predictor(img, rect).parts() 12 # 左眼 13 # 鼻端(一次) 14 LNp = pxys[42].x - int((pxys[45].x - pxys[42].x) * 0.3) 15 # 耳端(一次) 16 LEp = pxys[45].x + int((pxys[45].x - pxys[42].x) * 0.3) 17 LWp = LEp - LNp 18 # 上端 19 LU = min(pxys[23].y,pxys[24].y) 20 # 下端 21 LDp = max(pxys[46].y, pxys[47].y) + max(pxys[46].y, pxys[47].y) - min(pxys[43].y, pxys[44].y) 22 LHp = LDp - LU 23 # もし縦長 24 if LWp <= LHp: 25 LN = LNp - int((LHp - LWp) * 0.5) 26 LE = LEp + int((LHp - LWp) * 0.5) 27 # RUはそのまま 28 LD = LDp 29 # もし横長 30 else: 31 LN = LNp 32 LE = LEp 33 # RUはそのまま 34 LD = LU + LWp 35 L = img[LU:LD,LN:LE] 36 L2 = cv2.resize(L,size) 37 cv2.imwrite("eyetest.jpg",L2) 38 39```このようにして左目を抽出します。 40iPhoneで使いたいのでXCodeを使ってアプリ化したいのですが、それは理論上可能でしょうか??
あなたの回答
tips
プレビュー