2012-07-07 3 views
2

Я прошел через множество учебников и руководств, и я смог преобразовать его часть. Но я не знаю, как преобразовать последнюю строку в javacv. Так, пожалуйста, может кто-нибудь помочь мне преобразовать этот код в javacv?Как преобразовать этот код в javacv?

img = cv2.imread('sofud.jpg') 

gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 

ret,thresh = cv2.threshold(gray,127,255,1) 

contours,hierarchy = cv2.findContours(thresh,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE) 

    for cnt in contours: 
    x,y,w,h = cv2.boundingRect(cnt) 
    if 10 < w/float(h) or w/float(h) < 0.1: 
    cv2.rectangle(img,(x,y),(x+w,y+h),(0,0,255),2) 

ответ

0

Вы можете использовать последнюю строку, как это в Java CV:

opencv_core.cvRectangle(image, opencv_core.cvPoint(m,n), opencv_core.cvPoint(i,j), opencv_core.cvScalar(0,0,255,0), thickness, 8, 0); 

Где параметры означают:

opencv_core.cvRectangle(CvArr* img, CvPoint , CvPoint, CvScalar color, int thickness=1, int lineType=8, int shift=0) 

и посмотреть на эту Link для получения дополнительной информации.

EDIT:

Это пример поиска контуров:

cvFindContours(grayImage, memory, contours, sizeof(CvContour.class) , CV_RETR_CCOMP, CV_CHAIN_APPROX_SIMPLE, cvPoint(0,0)); 

Если параметр в виду:

cvFindContours(CvArr* image, CvMemStorage* storage, CvSeq** first_contour, int header_size=sizeof(CvContour), int mode=CV_RETR_LIST, int method=CV_CHAIN_APPROX_SIMPLE, CvPoint offset=cvPoint(0,0)) 

Для получения дополнительной информации о параметрах, обратите внимание на это Link, под FindContours разделе.

Вы также можете использовать функцию cvDrawContours, чтобы нарисовать контуры так же, как мы использовали функцию cvFindContours.

Посмотрите на это Link. Это другой пост на этом веб-сайте, в котором они объяснили использование поиска контуров при обнаружении blob.

Надеюсь, что это поможет.

+0

Прошу вас также объяснить, как использовать метод findContours в javacv. Для этого нужны еще 3 целых параметра? –

+0

@LBNCons В моем ответе, пожалуйста, посмотрите раздел «EDIT:». – codeDEXTER