이미지 분석의 연결 구성 요소 표기 알고리즘

2099 단어 xpclass알고리즘
이미지 처리 연결 구성 요소 표기 알고리즘
 
연결 구성 요소 태그 알고리즘 (connected component labeling algorithm) 은 이미지 분석 에서 가장 많이 사용 되 는 알고리즘 중 하나 입 니 다.
알고리즘 의 실질 은 그림 의 모든 픽 셀 을 스 캔 하 는 것 입 니 다. 픽 셀 값 이 같은 그룹 (group) 으로 나 뉘 어 최종 적 으로 얻 을 수 있 습 니 다.
그림 의 모든 픽 셀 연결 구성 요소 입 니 다.스캐닝 방식 은 위 에서 아래로, 왼쪽 에서 오른쪽으로, 한 폭 에 N 개의 상이 있 을 수 있다
소의 그림 에서 최대 연결 구성 요소 의 개 수 는 N / 2 입 니 다.스 캔 은 모든 픽 셀 단 위 를 기반 으로 합 니 다. 2 값 이미지 에 있어 서 는...
연결 구성 요소 집합 은 V = {1} 또는 V = {0} 일 수 있 으 며, 전경 색 과 배경 색 에 따라 다 릅 니 다.그 레이스 케 일 이미지 에 있어 서
그림 구성 요소 픽 셀 집합 은 0 ~ 255 사이 의 그 레이스 케 일 값 일 수 있 습 니 다.
 
알고리즘 프로 세 스 는 다음 과 같 습 니 다.
1.      먼저 현재 픽 셀 과 인접 한 8 인접 도 메 인 픽 셀 값 을 검색 하고 연결 픽 셀 에 표 시 를 하 는 것 을 발견 합 니 다.
2.      모든 픽 셀 점 을 완전히 스 캔 한 후 태그 에 따라 모든 연결 구성 요 소 를 합 칩 니 다.
 
알고리즘 구현 Class 파일 설명:
AbstractConnected ComponentLabel: 추상 적 인 Class 는 추상 적 인 방법 doConntected Label () 을 정의 합 니 다.
동시에 몇 가지 공공 방법 을 완성 했다
Connected Component LabelAlgOne: 읽 기 쉬 운 연결 구성 요소 알고리즘 이 완성 되 었 고 최적화 되 지 않 았 습 니 다.
위의 자 추상 류 를 계승 하 다
Connected Component LabelAlgTwo: 빠 른 연결 구성 요소 알고리즘, 알고리즘 기반 최적화, 현재 픽 셀 추출
의 네 이웃 도 메 인 은 스 캔 과 태그 통합 을 마 쳤 습 니 다.
 
Label 과 PixelInfo 는 두 개의 데이터 구조 로 알고리즘 계산 과정 에서 의 중간 변 수 를 저장 합 니 다.
 
ImageLabelFilter 는 알고리즘 의 구동 류 를 테스트 하 는데 사용 되 며, ImageAnalysisUI 는 현실 테스트 결과 의 UI 류 입 니 다.
 
알고리즘 실행 결과:
 
표 시 된 색인 에 따라 구성 요 소 를 착색 합 니 다.
데이터 구 조 를 정의 하 는 코드 는 다음 과 같 습 니 다.
public class Label { 	 	private int index; 	private Label root; 	 	public Label(int index) { 		this.index = index; 		this.root = this; 	} 	 	public Label getRoot() { 		if(this.root != this) { 			this.root = this.root.getRoot(); 		} 		return root; 	}  	public int getIndex() { 		return index; 	}  	public void setIndex(int index) { 		this.index = index; 	}  	public void setRoot(Label root) { 		this.root = root; 	} }

Pixelnfo 의 코드 는 다음 과 같 습 니 다.
추상 적 인 구성 요소 연결 표기 알고리즘 Class 는 다음 과 같다.
4. 567913. 추상 류 를 실현 하 는 알고리즘 원 의 코드 는 다음 과 같다.
테스트 코드 는 이전 글 을 참고 할 수 있 습 니 다 - 
자바 디지털 이미지 처리 기초 지식 - 필수

좋은 웹페이지 즐겨찾기