직물 이미지에서 실 수 감지


12

나는 이미지 처리 및 직물 이미지의 얀 수, 즉 날실 및 위사 (수직 및 평행 얀을 x 축)를 결정하기 위해 프로젝트를 진행하는 초보자 사용자입니다.

샘플 이미지

경사와 위사에 대해 열과 행의 합계를 취하여 원사를 감지하려고하지만 이미지의 초점이 잘 맞지 않고 선명하지 않기 때문에 작동하지 않는 것 같습니다. 또한 상기 방법은 직물에서 얀의 정렬에 매우 민감하다.

원사 감지를 위해 더 나은 알고리즘을 제안하십시오. 또한 모든 캡처 된 이미지에 대해 실을 직선으로 만들 수있는 가능성이있는 경우. IMROTATE를 시도했지만 행의 합을 방해하는 알고리즘으로 이미지에 검은 영역이 생성되고 알고리즘이 실패합니다.

이와 관련하여 도움이 필요합니다. 감사.


FFT를 사용하십시오. 숙제입니까?
— endolith

네, 푸리에 변환이 올바른 시작점 일 것입니다. 그것은 이미지의 규칙 성을 모호함에서 벗어나게 할 것입니다. 그래도 부분 회전을 처리하는 방법을 모르겠습니다. 줄무늬를 변형하고 위상을 확인한 다음 인접한 줄무늬가 왼쪽 또는 오른쪽으로 기울어 졌는지 확인할 수 있습니다.
— Daniel R은

답변:


9

푸리에 변환은 이미지의주기적인 특징의주기를 제공합니다. 예를 들어 가로 3 픽셀, 세로 5 픽셀의 구조 이벤트가 있음을 알려줍니다. 여기에서 픽셀 스케일로 원사의 수를 계산할 수 있습니다


3

Mathematica의 일부 코드 :

i = ColorNegate@Import@"http://i.stack.imgur.com/Jlhgw.jpg";
i3 = DeleteSmallComponents[Binarize[i, .4], 10];
lines = ImageLines[i3, .6];
Show[i, Graphics[{Thick, Orange, Line /@ lines}]]
(*y coord mean increments at x=0 *)
b = Mean@Differences@ Sort[(#[[2, 1]] #[[1, 2]] - #[[1, 1]] #[[2, 2]])/(#[[1,1]] - #[[2, 1]]) & /@ lines];
(*mean slope*)
a = Mean[-(-#[[1, 2]] + #[[2, 2]])/(#[[1, 1]] - #[[2, 1]]) & /@ lines];
(*Threads*)
- a ImageDimensions[i3][[1]]/b 
(*yarns*)
2 ImageDimensions[i3][[2]]/b

결과>

여기에 이미지 설명을 입력하십시오

34.5541
27.2259


1
이 코드에서 수행중인 작업을 설명하면 좋을 것입니다.
— Abid Rahman K
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.