2012-05-12 13 views
0

誰でもC#でOpenCVを使用して骨格化する方法の例があります。CでOpenCVを使用した骨格化#

はあなたに感謝

+1

-1。この種の質問にはGoogleがお手伝いします。ここでの質問には、いくつかの研究努力が含まれると予想されます。何を試しましたか?あなたが直面している問題は何ですか? –

答えて

2

申し訳ありませんが、私は、C#からの例を持っていません。しかし、私はあなたにOpenCV-Pythonを使ってメソッドを与えることができます。これは基本的なOpenCV関数で行われるので、私が使用したすべての関数もC#でも利用できるはずです。以下は

import cv2 
import numpy as np 

img = cv2.imread('img.png',0) 
size = np.size(img) 
skeleton = np.zeros(img.shape,np.uint8) 

ret,img = cv2.threshold(img,127,255,0) 
kernel = cv2.getStructuringElement(cv2.MORPH_CROSS,(3,3)) 
finished = False 

while(not finished): 
    eroded = cv2.erode(img,kernel) 
    temp = cv2.dilate(eroded,kernel) 
    temp = cv2.subtract(img,temp) 
    skel = cv2.bitwise_or(skeleton,temp) 
    img = eroded.copy() 

    zeros = size - cv2.countNonZero(img) 
    if zeros==size: 
     finished = True 

cv2.imshow("skeleton",skeleton) 
cv2.waitKey(0) 
cv2.destroyAllWindows() 

結果である:

enter image description hereenter image description here

方法はあまりよくないので、完璧ではないにもつながります。しかし、より良い、私は願っています。

EmguCVドキュメント:http://www.emgu.com/wiki/files/2.3.0/document/Index.html

私はすべての機能が利用できるようになると確信しています。だから自分自身を実装する。

関連する問題