직물 이미지에서 실 수 감지


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.