*   >> Чтение Образование Статьи >> science >> programming

Фильтрация связи Components

и контур отклоняется, то мы удалить его из нашего списка контуров. В конце концов только принятые контуры останутся, и мы вернуть его. Вы можете узнать больше о указателей на функции здесь. Прототип функции критерии будут: Критерии INT (* CvSeq контур);

Кодирование пример: фильтрация и извлечение связные компоненты

<р> Теперь мы напишем эту функцию, которая будет делать работу , Я отправлю код функции в ниже, на полный рабочий код доступен в конце статьи.

Каталог

  CvSeq * extract_and_filter_CC (IplImage * IMG, Int (* критериям ) (CvSeq *)) {


CvSeq * контуры, * PTR; CvMemStorage * MEM = cvCreateMemStorage

(0);

cvFindContours (IMG, сувениры, и контуры, SizeOf (CvContour), CV_RETR_CCOMP, CV_CHAIN_APPROX_SIMPLE, cvPoint (0,0)); PTR = контуры; в то время как (PTR! = NULL) {если (критерии (PTR) == 0) {если (PTR == контуры) {контуры = ptr-> h_next; PTR = контуры; ptr-> h_prev = NULL; } Еще {ptr-> h_prev-> h_next = ptr-> h_next; если (ptr-> h_next! = NULL) ptr-> h_next-> h_prev = ptr-> h_prev; PTR = ptr-> h_next; }} Еще {PTR = ptr-> h_next;

}} вернуться контуры; }

<р> Пример использования В этом примере я покажу простую функцию, которая фильтрует компоненты на основе их соотношения , получение подключен только компоненты, которые почти квадратный.


  INT квадрат (CvSeq * контур) {CvRect окно = cvBoundingBox (контур); если (box-> ж /box-> HW /box-> ч> 0,4) возвращение 1; вернуться 0;} 

Каталог

<р> Мы вызываем функцию extract_and_filter_CC так: filtered_cc = extract_and_filter_CC (IMG, квадрат);

Заключение В этой статье описывается другой Применение подключенных компонентов: для фильтрации части изображения, которые не вписываются в определенные критерии. Он также использует указатели на функции, чтобы сделать фильтрацию в общий, как это возможно.

Этот метод очень мощный и может быть использован в сочетании с другими методами, чтобы удалить шум изображения или для извлечения особенных части изображения. Полный рабочий код с комментариями можно ознакомиться здесь.

Page   <<  [1] [2] 
Copyright © 2008 - 2016 Чтение Образование Статьи,https://ru.nmjjxx.com All rights reserved.