KR102562904B1 - 바코드 감지 방법 - Google Patents

바코드 감지 방법 Download PDF

Info

Publication number
KR102562904B1
KR102562904B1 KR1020207034731A KR20207034731A KR102562904B1 KR 102562904 B1 KR102562904 B1 KR 102562904B1 KR 1020207034731 A KR1020207034731 A KR 1020207034731A KR 20207034731 A KR20207034731 A KR 20207034731A KR 102562904 B1 KR102562904 B1 KR 102562904B1
Authority
KR
South Korea
Prior art keywords
discrete
image
radon transform
image array
array
Prior art date
Application number
KR1020207034731A
Other languages
English (en)
Other versions
KR20210070235A (ko
Inventor
카르데네스 오스카 고메즈
라모스 호세 마누엘 로드리게스
Original Assignee
웁틱스, 에스.엘.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 웁틱스, 에스.엘. filed Critical 웁틱스, 에스.엘.
Publication of KR20210070235A publication Critical patent/KR20210070235A/ko
Application granted granted Critical
Publication of KR102562904B1 publication Critical patent/KR102562904B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14131D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10712Fixed beam scanning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10712Fixed beam scanning
    • G06K7/10722Photodetector array or CCD scanning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20048Transform domain processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 2 차원 디지털 이미지 배열로 표현된 디지털 이미지에서 바코드를 검출하기 위한 컴퓨터 구현 방법에 관한 것으로, 이미지 배열에 필터를 적용하는 단계, 필터링된 이미지 배열의 이산 라돈 변환을 계산하는 단계, 여기서 이산 라돈 변환은 필터링된 이미지 배열를 가로 지르는 복수의 이산 선에 대해 계산되며, 여기서 주어진 기울기를 갖는 각각의 주어진 이산 선에 대해 이산 라돈 변환은 주어진 이산 선의 여러 다른 변위에 대해 계산되며, 여기서 변위의 수는 이미지 배열의 차원의 두 배 보다 더 적으며, 필터링된 이미지 배열의 이산 라돈 변환 출력에서 패턴의 정점 포인트을 감지하는 단계, 및 디지털 이미지에 존재하는 바코드의 위치를 제한하기 위해 검출된 정점 포인트을 이미지 배열의 이산 선으로 다시 변환하는 단계를 포함한다.

Description

바코드 감지 방법
본 발명은 특허 청구항 1의 전제부에 명시된 유형의 방법 및 특허 청구항 14에 명시된 컴퓨터 시스템에 관한 것이다.
광학 기계 판독 가능 바코드는 산업 및 상업 분야에서 해당 바코드를 포함하는 물체 또는 항목을 설명하고 식별하는데 널리 사용되는 수단이 되었다.
특히, 광학 기계 판독 가능 바코드는 개체를 자동으로 식별하고 개체에 대한 데이터를 수집하고 사람의 개입없이 컴퓨터 시스템에 직접 입력하기 위해 개체의 자동 식별 및 데이터 캡처(AIDC)를 용이하게 한다.
레이저 스캐너를 사용하여 슈퍼마켓 계산대 시스템에서 구매 한 품목의 바코드를 읽는 것과 같이 전용 광학 스캐너로 많은 광학 기계 판독 가능 바코드를 읽는 동안, 디지털 카메라로 캡처한 이미지에서도 바코드를 읽을 수 있는 애플리케이션 소프트웨어가 개발되었다. 예를 들면, 카메라. 스마트 모바일 장치에서 바코드의 사용과 적용을 더욱 확장한다.
그러나 현재 디지털 이미지에서 광학 바코드를 읽는 방법에는 몇 가지 심각한 단점과 한계가 있다.
특히, 디지털 이미지에 포함된 바코드, 특히 디지털 이미지에 포함된 1 차원 바코드의 감지 또는 위치 파악 및 식별은 현재 상태에서도 계산이 어렵고, 스마트 장치의 최신 프로세서인 예를 들어 스마트 폰 또는 태블릿에서 계산 리소스 집약적인 작업임이 밝혀졌다.
실제로 현재의 방법이나 시스템은 기본적으로 디코더로만 작동한다. 예를 들어, 스마트 장치로 캡처할 때 1 차원 바코드는 카메라 바로 앞에 있고 정확한 거리에 맞춰 정렬된다.
즉, 현재의 방법 또는 시스템은 이미지 내 바코드의 특정 위치 및 / 또는 크기 및 / 또는 해상도 및 / 또는 방향을 예상하거나 가정한다.
따라서 현재 알려진 방법 또는 시스템은 종종 만족스러운 결과를 제공하지 못한다. 많은 경우 또는 대부분의 실제 사례에서 캡처된 이미지 내의 바코드가 이미지 내에서 임의적이고 예기치 않은 위치, 크기 또는 방향을 갖기 때문이다. 
문제
따라서 본 발명의 목적은 디지털 이미지 내에 존재하는 바코드를 검출하고 위치를 파악하기 위한 개선된 수단을 제공하는 것이다.
특히, 예를 들어, 본 발명의 목적은 디지털 이미지 내에 내장된 1 차원 바코드의 위치 파악을 단순화하고 가속화하는 것이다.
해결책
본 발명에 따르면, 이 목적은 청구항 1에 따른 방법 및 청구항 14에 따른 컴퓨터 시스템에 의해 달성된다.
유리한 실시예 및 추가 개발은 하위 청구항의 주제이다.
2 차원 디지털 이미지 배열로 표현된 디지털 이미지에서 바코드, 예를 들어 1 차원 바코드를 검출하는 예시적인 방법은 다음 단계 중 하나, 일부 또는 모두를 포함할 수 있다.
Figure 112020130380281-pct00001
이미지 배열에 필터 적용하는 단계,
필터링된 이미지 배열의 이산 라돈 변환을 계산하는 단계, 여기서 이산 라돈 변환은 필터링된 이미지 배열를 가로 지르는 복수의 이산 선에 대해 계산하는 단계,
여기서 주어진 기울기를 갖는 각각의 주어진 이산 선에 대해 이산 라돈 변환은 주어진 이산 선의 다수의 상이한 변위에 대해 계산되며, 여기서 상기 변위의 수는 이미지 배열의 치수의 2 배 미만이고,
필터링된 이미지 배열의 이산 라돈 변환 출력에서 패턴의 정점 포인트을 감지하는 단계,
디지털 이미지에 있는 바코드의 위치를 제한하기 위해 감지된 정점 포인트을 이미지 배열의 이산 선으로 다시 변환하는 단계,
여기서 2 차원 디지털 이미지 배열 또는 디지털 이미지는 특히 강도 값의 2 차원 배열, 예를 들어 이미지 픽셀의 2 차원 배열로 표현되는 것으로 이해 될 수 있다. 
요컨대, 위에서 설명한 예시적인 방법은 디지털 이미지를 가로 지르는 거의 모든 직선을 따라 픽셀의 합을 동시에 효율적으로 계산할 수 있게 한다.
또한, 본 발명은 이미지 좌표 영역에서 바코드를 직접 감지하고 찾는 대신, 처리될 디지털 이미지를 거의 모든 가능한 이미지의 투영을 커버하는 기울기 또는 각도 및 변위로 표현할 수 있는 영역으로 변환한다. 이 새로운 영역, 즉 필터링된 이미지 배열의 이산 라돈 변환을 계산하여 생성된 출력에서 바코드 이미지는 원본 도메인, 예를 들면, 원본 이미지 또는 원본 이미지 좌표에서 바코드를 감지하는 것보다 더 쉽게 감지할 수 있는 특수 패턴을 생성한다.
여기서 바코드라는 용어는 특히 1 차원 바코드 또는 선형 바코드, 예를 들어, 다양한 폭과 선 사이의 다양한 간격을 갖는 평행선의 패턴을 지칭하는 것으로 이해될 수 있다.
더욱이, 한정된 수의 선 포인트 또는 선 요소를 갖는 상기 이산 선은 주어진 이산 선이 이미지 배열의 각 열에서 하나 이상의 배열 포인트를 통과하지 않도록 정의될 수 있다.
주어진 이산 선은 특히 기울기, 예를 들면 기울기 s 및 절편, 예를 들면 절편 d에 의해 매개 변수화될 수 있다. 상기 기울기는 또한 각도로 표현될 수 있으며, 이는 아탄(atan)(s/(N-1)), 즉 기울기 s의 역 탄젠트로서 정의될 수 있으며, 여기서 N은 정수, 예를 들어 처리될 이미지의 이미지 배열의 열의 수이다.
또한, 동일한 기울기를 갖는 다른 이산 선에 대해 주어진 기울기를 갖는 주어진 이산 선에 대한 변위는 또한 절편, 예를 들어 수직 절편에 의해 특성화 될 수 있다.
위에 설명된 예시적인 방법은 디지털 이미지, 예를 들면 스마트 폰의 카메라에 의해 캡처된 디지털 이미지 내의 사이에/내장된 1 차원 바코드의 정확하고 신뢰할 수 있는 식별 및 위치 파악을 얻기 위해 필요한 계산 단계의 상당한 속도 향상 및 감소를 가능하게 한다.
이를 통해 디지털 이미지 내에서 바코드의 위치, 크기 또는 방향에 관계없이 디지털 이미지에서 바코드를 감지, 국부화 및 디코딩할 수 있다. 위에 설명된 방법 또는 변환은 이미지 내의 사이/ 내장된 바코드의 각도/회전 또는 방향의 변화에 불변하기 때문이다.
 특히, 본 발명은 스마트 폰과 같은 일반적인 스마트 장치의 중앙 처리 장치(CPU) 및/또는 그래픽 처리 장치(GPU)와 같은 처리 장치에서 이러한 모든 단계, 즉 바코드의 탐지 또는 위치 파악 및 디코딩을 수행할 수 있도록 한다.
예를 들어, 종래 기술에 따르면,
Figure 112020130380281-pct00006
픽셀 크기의 이미지(N이 양의 정수인 경우)에 대해 필요한 최소 출력 크기 또는 최소 계산 수는 본 발명에 따라
Figure 112020130380281-pct00007
이다. 즉, 필터링된 이미지 배열의 디지털 화상의 라돈 변환으로 인한 출력의 출력 크기는 단지
Figure 112020130380281-pct00008
이며 상위 로그의 정수 합 컴퓨팅 연산의 수,
Figure 112020130380281-pct00009
등의 결합이다.
여기에 설명된 방법은 적어도
Figure 112020130380281-pct00010
 수의 계산을 필요로 하는 현재의 무차별 대입 접근 방식과 비교하여 계산 비용을 상당히 절감할 수 있다. 예를 들어, N = 512 인 이미지, 즉 512 x 512 픽셀의 이미지의 경우, 최첨단 접근 방식과 비교하여 1 % 미만의, 특히 10억 번의 계산 대신에 9,4 백만번의 계산이 필요하다.
특히, 본 발명은 현재 모바일 스마트 장치의 프로세서가 수행하기에는 계산 비용이 너무 많이 드는 완전하고 완전한 라돈 변환만이 디지털 이미지에 내장된 바코드의 위치를 결정하는 데 필요한 충분한 계산 기반을 제공할 수 있다는 기술적 편견을 극복한다.
달리 말하면, 본 발명은 이미지 내에서 바코드의 위치, 크기 및 방향에 제약을 가하지 않고 스마트 폰과 같은 모바일 스마트 장치에서 이미지 데이터에서 바코드 감지 및 디코딩을 수행하는 방법을 자유롭게 한다. 현재 스마트 폰이 제공하는 제한된 처리 능력으로 수행할 수 없다고 생각했던 작업이다.
상기 불연속선은 직선을 정확히 따르지 않는다는 점에서 고전적인 연속 직선과 다를 수 있으며, 이는 다음에서 이해할 수 있다.
상기 예시적인 이산 선은 처리될 이미지의 이산 이미지 배열상의 정수 위치에 정의되며, 예를 들어 정수 위치에서 시작하는 경우 정수 단계의 상승 또는 하강이 수행될 수 있으며, 여기서 각각 상승 단계 또는 하강 단계는 이산 이미지 배열의 정수 위치를 방문한다. 
불연속 선은, 예를 들어,
Figure 112020130380281-pct00011
 인 크기(N, N)의 2 차원 도메인을 가로 지르는(정수) 좌표 {xi,yi} 쌍이있는 불연속 점 세트로 정의될 수 있다. n은 정수> 1이고 i와 N은 정수이며 위치 {x 0 = 0, y 0 = d)에서 시작하여 {x N-1 = N-l, yN-1 = d + s)에서 끝난다. 즉 x 축 끝에서 이 선은 y 축의 시작점 위의 s 위치를 완료한다. d, 여기서 d는 절편 또는 변위이고 s는 선의 기울기 또는 각도이다.
이 세트는
Figure 112020130380281-pct00012
로 평가될 수 있다. 예를 들어, N = 8, n = 3, 과
x와 s가 이진수로 분해되면 용어 l은 다음과 같다.
예를 들어 s = 3, 즉 s =(s 0 , s 1 , s 2 ) =(1,1,0)에 대해 평가하면 다음 공식이 된다.
이제 0과 N-1 사이의 각 x(이진수로 표시됨)에 대해 이 공식을 평가할 수 있으며 모든 y 좌표에 d를 더한 후 원하는 선을 얻을 수 있다.
대안적으로 또는 추가적으로, 이산 선은 특히 다음과 같이 재귀적으로 정의될 수 있다. 예를 들어, 처리할 이미지 또는 이미지 배열 또는 이미지 도메인을 분리된 선의 다른 부분이나 세그먼트를 포함하는 두 개의 절반으로 분해하거나 나눌 수 있다.
예를 들어, 이미지 배열 또는 이미지 도메인은 수평 축을 따라 두 개의 절반으로 나눌 수 있으며, 시작 정수와 짝수의 상승 단계가 주어지면 각 이미지 배열에서 상승 단계의 절반을 오르도록 규정할 수 있다. 절반 또는 이미지 영역 절반 및 홀수의 상승 단계의 경우, 제1 이미지 배열 절반 또는 제1 이미지 영역 절반에서 상승의 전반을 수행하도록 규정될 수 있으며, 여기서 전반부 단계의 수 플로어((상승 단계 수)/2), 플로어(floor)는 플로어 함수이고 나머지 상승 단계 수는 두 번째 이미지 배열 절반 또는 두 번째 이미지 영역 절반에서 수행된다.
이 예시적인 레시피는 처리될 이미지 또는 이미지 배열의 두 지점, 즉 두 개의 정수 위치를 연결하는 이산 선을 생성할 수 있다. 완전성을 위해 처리 될 이미지 배열를 가로 지르는 이산 선의 시작(또는 끝) 지점은 이미지 배열 외부, 즉 이미지 배열 포인트 또는 이미지 배열 인덱스 외부에 있을 수 있다는 점에 유의한다. 즉, 영역, 예를 들어 기울기 또는 각도에 의해 확장되는 매개 변수 공간 및 이산 선이 설명 될 수 있는 절편 또는 변위는 영역을 넘어 확장될 수 있다. 예를 들면, 처리할 이미지를 설명하는 이미지 배열 인덱스이다.
좀 더 공식적으로,
Figure 112020130380281-pct00015
값을 가로 지르는 이산 선
Figure 112020130380281-pct00016
의 재귀적 정의, n은 정수이고 용어
Figure 112020130380281-pct00017
를 다음과 같이 표현하여 주어질 수 있다.
, 여기서 [] 바닥 함수를 나타낸다.
또한 m 단계로의 부분 이산 라돈 변환은 다음과 같이 정의할 수 있다.
여기서 단계 m은 
Figure 112020130380281-pct00022
Figure 112020130380281-pct00023
연속 열의 그룹으로 가능한 모든 합계를 수행하는 변환 단계로 이해될 수 있다. 첫 번째 단계에서 m = 0 일 때 부분 변환 f°는 원래 데이터 f가 된다. 각 그룹 내에 열이 하나만 있을 때 가로 축에서 합산하는 데 의미가 없으므로 쓸 수 있지만,
Figure 112020130380281-pct00024
m = 1이면 두 개의 열로 구성된 스트립
Figure 112020130380281-pct00025
그룹이 있다. m = 2이면 각각 4 개의 열로 구성된
Figure 112020130380281-pct00026
스트립이 된다. 마지막 단계에서 m = n 일 때 모든 열을 포함하는 그룹이 하나뿐이므로 특히 최종 라돈 변환,
Figure 112020130380281-pct00027
Figure 112020130380281-pct00028
이라고 할 수 있다.
완전성을 위해 람다 함수는,
Figure 112020130380281-pct00029
이진 다차원 인덱스에서 십진 1 차원 인덱스로 변환하는 것이다. 또한 수직 막대 기호 "|"이 배열에서 매개 변수를 분리하기 위해 위에서 사용되었다는 점에 유의한다. f(x | y); 에서와 같이 이러한 매개 변수를 분해할 수 있는 이진 차원을 구분하기 위해 쉼표 ","가 사용된다.
또한 연속된 두 단계 간의 매핑은 다음과 같이 표현할 수 있다.
부분 단계의 비트 수는 다양할 수 있으며 현재 단계인 m에 따라 달라질 수 있다. 앞에서 언급했듯이 m = 0 일 때 배열은
Figure 112020130380281-pct00034
실제로 2 차원이고 변수 s는 여전히 비어 있으므로 f(x | y)에 직접 매핑되며 m = n 일 때 마지막
Figure 112020130380281-pct00035
단계, 변수 v를 비울 수 있으므로
Figure 112020130380281-pct00036
원하는 결과
Figure 112020130380281-pct00037
이다.
이산 라돈 변환을 수행하기 전에 디지털 이미지 또는 이미지 배열에 적용될 수 있는 전술한 필터는 예를 들어 가장자리 검출 필터 또는 기울기 필터일 수 있다. 예를 들어, 필터는 이미지 픽셀의 강도 값의 기울기를 계산할 수 있다.
이러한 필터를 적용하면 특히 바코드의 경우와 같이 밝기 또는 강도가 급격하게 변하거나 불연속성을 갖는 처리될 이미지의 특정 특징을 강조할 수 있다.
결과적으로, 이것은 특히 필터링된 이미지 배열의 이산 라돈 변환의 출력에서 패턴의 정점 포인트을 검출하는 단계를 용이하게 할 수 있는데, 이는 상기 예시적인 기울기 필터가 또한 상기 패턴의 가장자리 또는 윤곽을 강조하기 때문이다.
예를 들어, 필터링된 이미지의 이산 라돈 변환 출력의 패턴은 사변형 모양, 예를 들어 마름모 모양을 가질 수 있으며, 가능한 구배 필터는 사변형 모양 또는 마름모 모양 패턴의 가장자리 또는 윤곽을 강조할 수 있다. 사변형 또는 마름 모형 패턴의 정점 포인트을 보다 쉽게 감지하고 위치를 지정할 수 있다. 아래에서 더 상세히 설명되는 바와 같이, 이것은 처리될 이미지에서 검출될 바코드의 위치에 대한 제약을 개선할 수 있다.
복수의 이산 선 및 필터링된 이미지 배열를 가로 지르는 주어진 기울기에 대한 이산 라돈 변환의 위에서 언급한 계산은 특히 이미지 배열의 중심에 가장 가까운 이산 선의 수 N의 변위에 대해 계산될 수 있다. 여기서 N은 정수 및 이미지 배열의 차원이다.
이는 필터링된 이미지 배열에 걸쳐 이산 선의 모든 각도 또는 기울기에 대해 수행할 수 있다.
상기 N 개의 중심 변위만 이산 라돈 변환을 계산하는 것이 처리될 이미지에서 바코드의 위치를 안정적이고 정확하게 감지하고 결정하는 데 충분하다는 것을 놀랍게도 발견했다. 예를 들어, 지금까지는 바코드 위치 추정치를 얻기 위해 기울기 또는 각도 당 이산 선의 최소
Figure 112020130380281-pct00038
변위를 계산해야 한다고 가정했다.
여기에 제시된 방법은 처리될 이미지를 가로 지르는 불연속 선의 가능한 모든 변위 및 기울기를 계산하는 것보다 더 효율적일 뿐만 아니라 변위의 계산 또는 식별을 용이하게 한다. 왜냐하면 상기 변위는 처리할 이미지의 지점인 고정된 중심에 대해 정의될 수 있기 때문이다.
삽입된 바코드를 검출하기 위해 상기 및 여기에 설명된 이미지 처리를 더욱 단순화하고 속도를 높이고, 처리될 디지털 이미지가 아직 정사각형이 아닌 경우, 디지털 이미지는 정사각형 이미지로 크기 조정될 수 있다.
Figure 112020130380281-pct00039
크기의 이미지 배열 N은 정수이다.
특히, 처리될 이미지는 예를 들어 절단, 패딩 또는 보간에 의해 크기가
Figure 112020130380281-pct00040
이고,
Figure 112020130380281-pct00041
 이고, n은 1보다 큰 정수인 이미지 배열로 크기가 조정될 수 있다.
이것은 그 중에서도 특히 이미지 처리의 효율성을 향상시킬 수 있고, 이미지가 절반으로 나뉘어 지거나 심지어 두 가지 요소로 나눌 수 있기 때문에 이미지 처리, 예를 들면 라돈 변환의 계산은 이미지의 하위 부분의 다른 절반에 대해 병렬로 수행될 수 있다.
또한, 필터링된 이미지 배열의 이산 라돈 변환은 4 개의 사분면에 대해 수행될 수 있으며, 여기서 사분면은 이산 라돈 변환이 계산될 필터링된 이미지 배열에 걸쳐 특정 범위의 기울기 또는 이산 선의 각도를 정의할 수 있다.
예를 들어, 제1 사분면은 0° 내지 45°의 이산 선 기울기를 커버(cover)할 수 있고, 제2 사분면은 45° 내지90°의 이산 선 기울기를 커버할 수 있으며, 제3 사분면은 -90° 내지 -45°의 이산 선 기울기를 커버할 수 있다. 제4 사분면은 -45°에서 0°까지의 이산 선 기울기를 커버할 수 있다.
또한, 1 사분면의 계산된 라돈 변환의 회전 및 전치 사본은 4 사분면 및 1 사분면에 첨부될 수 있는 5 사분면을 정의할 수 있다.
모비우스(Mobius) 밴드 또는 모비우스(Mobius) 스트립과 같은 방식으로 4 사분면과 1 사분면을 연결할 수 있는 5 사분면을 도입하면 바코드가 가까이에 있거나 처리할 이미지의 가장자리에 위치하는 것을 방해할 수 있는 경계 효과를 방지할 수 있다.
앞서 언급한 바와 같이, 여기에 설명된 방법은 이미지에서 바코드를 탐지하고 위치를 찾기 위해 이산 라돈 변환을 계산하는 현재의 방법보다 더 효율적이다.
예를 들어 필터링된 이미지 배열의 이산 라돈 변환은 필터링된 이미지 배열의 열 또는 데이터 열별로 수행될 수 있다. 이것은 특히 더 효율적인 컴퓨터 프로세서 메모리 관리를 가능하게 할 수 있으며, 예를 들어, 필터링된 이미지 배열의 라돈 변환 홀수 및 짝수 열의 계산을 위해 별도의 메모리 버퍼가 할당될 수 있다.
예를 들어, 사분면을 계산하려면 처리할 이미지를 가로 지르는 이산 선의 N 개 각도 각각의 N 개의 중심 변위만 계산하면 이산 라돈 변환의 각 중간 단계에서 N 개의 데이터 스트라이프 또는 N 개 값의 열로 분산된 N 개의 값의
Figure 112020130380281-pct00042
만 계산하면 된다.  
예를 들어, 기울기 s 또는 0°에서 45°까지의 이산 선의 각도를 포함하는 1 사분면에서 d 상단 또는 최대 위치를 고려할 때
Figure 112020130380281-pct00043
Figure 112020130380281-pct00044
사이의 변위 d 를 2N 사이에서 변하는 중심 부분만 고려할 수 있다.
특히, 데이터 스트라이프 또는 데이터 열 간의 계산 관계는 다음과 같이 예시적으로 표현되고 활용될 수 있다.
이전 단계 m의 데이터에서 계산될 특정 단계 m + 1의 데이터를 고려해 볼 수 있다. m은 0에서 n-1 범위의 정수이고, n은 정수이고
Figure 112020130380281-pct00045
이다. .
단계 m + 1에 속하는 인덱스 S, 짝수 및 S + 1, 홀수를 사용하여 2 차원(d, s)-도메인에서 두 개의 연속 데이터 열 또는 데이터 스트라이프를 추가로 고려해 볼 수 있다.
이러한 각 열의 원하는 N 값을 계산하기 위해 인덱스
Figure 112020130380281-pct00046
Figure 112020130380281-pct00047
를 사용하여 길이가 N 인 두 개의 스트라이프를 더할 수 있다. 여기에서 추가할 열의 d 축에 따라 시작점은
Figure 112020130380281-pct00048
값과
Figure 112020130380281-pct00049
이다.
단계 m + 1의 인덱스 S는 예를 들어 다음과 같이 이진식에 따라 세분화 될 수 있다.
그런 다음 단계 m의 인덱스는 다음과 같이 표현할 수 있다.
다른 축 d 에 있는 줄무늬 또는 열의 시작점을 계산하기 위해 다음을 정의할 수 있다.
이 값으로 다음을 계산할 수 있다.
이 공식에서
Figure 112020130380281-pct00054
Figure 112020130380281-pct00055
는 각각 다음으로 큰 반올림 연산자이고, 더 작은 정수,≪ 기호는 이진 시프트를 나타내고 < 는 0 또는 1로 평가된 비교보다 낮다.
다르게 말하면, 여기에서 제안된 방법에서, 주어진 단계의 두 데이터 열이 함께 추가될 수 있고, 상기 합산의 결과는 다른 후기 단계에서 열을 계산할 수 있는 메모리 장소 또는 위치에 저장되거나 저장될 수 있거나 그것을 찾을 것이다.
더욱이, 계산의 각 단계에서 두 개의 메모리 버퍼는 스테이지 m의 데이터와 스테이지 m + 1의 데이터를 저장할 수 있다.
다음 의사 코드(pseudo-code)는 이전 단계를 포함하는 알고리즘의 예시적인 구현이며, 예시는 정의된 값 S, So, S1,
Figure 112020130380281-pct00056
,
Figure 112020130380281-pct00057
값과
Figure 112020130380281-pct00058
연속된 두 단계 S 및 Si의 열에 있는 데이터를 관련시킨다.
Figure 112020130380281-pct00059
행 인덱스 상단에서 내림차순으로 S 열에 있는 N 개의 데이터는 top -
Figure 112020130380281-pct00060
, 열의 N 데이터 따라서 행 인덱스 top-
Figure 112020130380281-pct00061
에서 내림차순 , 열의 N 데이터 행, 인덱스 top-
Figure 112020130380281-pct00062
+
Figure 112020130380281-pct00063
에서 내림차순 S1,
Figure 112020130380281-pct00064
행 인덱스 top-
Figure 112020130380281-pct00065
-
Figure 112020130380281-pct00066
에서 내림차순으로 S+1 열에 있는 N 데이터는, 행 인덱스 top-
Figure 112020130380281-pct00067
-
Figure 112020130380281-pct00068
로부터 하강시의 열 S0 에 N 데이터 및 열 인덱스 top-
Figure 112020130380281-pct00069
-
Figure 112020130380281-pct00070
+
Figure 112020130380281-pct00071
+로부터 하강하는 열 S1 에 N 데이터를 가산한 결과이다.
그러나, 여기서 설명된 방법을 수행하는 컴퓨터의 메모리 레이아웃에 따라 행 중심 알고리즘 버전이 사용될 수 있다.
위에서 언급한 바와 같이, 필터링된 이미지 배열의 이산 라돈 변환을 계산하여 생성된 출력, 바코드 이미지는 (d, s) - 매개 변수 공간 또는 도메인에서 특수 패턴으로 생성/변환되고, 즉 변위/절편 및 기울기/ 앵글 도메인은 원본 도메인, 즉 원본 이미지 또는 원본 이미지 좌표에서 바코드를 감지하는 것보다 더 쉽게 감지할 수 있다. 
특히, 예를 들어, 상기 패턴은 필터링된 이미지 배열의 이산 라돈 변환을 계산함으로써 생성된 출력에서 검출될 수 있는 가장자리 또는 정점 포인트을 포함할 수 있다. 상기 가장자리 또는 정점 포인트은 처리될 디지털 이미지에 존재하는 바코드의 위치를 제한할 수 있는 정보를 포함한다.
특히, 예를 들어, 상기 패턴은 사각형 모양, 예를 들어 마름모 모양일 수 있다.
보다 정확하게는 라돈 변환 출력에서 패턴의 감지된 가장자리 또는 정점 포인트은 디지털 이미지에 존재하는 바코드의 위치를 제한하기 위해 이미지 배열의 이산 선으로 다시 변환될 수 있다.
따라서, 예를 들어 패턴의 정점 포인트 검출은 이산 라돈 변환의 출력에서 강도 값 및 분산을 기반으로 할 수 있다.
추가로 또는 대안적으로 패턴의 정점 포인트의 검출, 예를 들어 사변형 또는 마름모 형상의 패턴은 상기 정점 포인트의 검출을 위해 훈련된 신경망에 의해 수행될 수 있다.
따라서, 디지털 이미지에 존재하는 바코드의 위치를 제한하는 것은 특히 검출된 패턴의 검출된 상부 정점 포인트 및 검출된 하부 정점 포인트의 수직 인덱스를 평균하는 것을 포함할 수 있다. 이는 처리할 이미지에서 바코드의 기울기 또는 각도를 제한할 수 있다.
디지털 이미지에 존재하는 바코드의 위치를 제한하는 것은 검출된 패턴의 2 개의 검출된 측면 정점 포인트, 예를 들어 왼쪽 및 오른쪽 정점 포인트의 수평 인덱스의 차이를 계산하는 것을 더 포함할 수 있다.
더욱이, 검출된 정점 포인트를 이미지 배열에서 이산 선으로 다시 변환하는 것은 2 개의 검출된 측면 정점 포인트, 예를 들어 왼쪽 및 오른쪽 정점 포인트 및/또는 상단 및 하단 정점 포인트 또는 임의의 다른 정점 포인트 조합을 변환하는 것을 포함할 수 있다. 이미지 배열에 있는 두 개의 이산 선의 선 파라미터로 그리고 상기 두 개의 이산 선의 교차점을 계산한다.
예를 들어, 상기 교차점은 처리될 이미지에서 바코드 중심의 위치를 제한할 수 있다.
예를 들어, 필터링된 이미지 배열의 이산 라돈 변환 출력의 라돈 d 및 s 매개 변수 공간으로부터 검출된 정점 포인트을 이미지에 있는 선의 x 및 y 매개 변수 공간으로 변환하는 것은 예를 들어 0° 내지 45° 사분면, 관계식 y = d + s /(N-1) x. 
45° 내지 90°의 경우 관계식은 x = -d +(N-1-s) /(N-1) y 로 표현할 수 있다. 
-45° 내지 0°의 관계식은 y = d-s /(N-1) y로 표현할 수 있다.
-90° 내지 -45°의 경우 관계식은 y = d +(s-N + 1) /(N-1) x로 표현할 수 있다.
2 차원 디지털 이미지 배열로 표현된 디지털 이미지에서 바코드를 검출하기 위한 예시적인 방법은 다음의 예시적인 단계 중 하나, 일부 또는 모두를 포함할 수 있다.
Figure 112020130380281-pct00073
스마트 모바일 장치 카메라로 이미지 캡처, 선택적으로 중앙의 정사각형 영역 또는 가로 세로 비율의 이미지 캡처하는 단계
Figure 112020130380281-pct00074
필요한 경우 N x N 크기의 정사각형 이미지가 되도록 이미지 크기를 조정하는 단계, 예를 들면, N = 512 또는 N = 1024 크기, 장치 계산 용량에 따라 다르다.
Figure 112020130380281-pct00075
(정사각형) 이미지의 휘도 채널 그라디언트 모듈 계산하는 단계
Figure 112020130380281-pct00076
4 사분면에 대해 계산된 기울기의 이산 라돈 변환을 계산하는 단계, 여기서 이미지를 가로 지르는 이산 선의 각 각도 또는 기울기에 대한 N 개의 중심 변위만 계산된다.
Figure 112020130380281-pct00077
N 중심 변위(DRTN)에 대한 이산 라돈 변환의 5 사분면 버전을 얻기 위해 4 사분면의 오른쪽에 1 사분면의 수직 및 수평 미러링 버전을 부착하는 단계
Figure 112020130380281-pct00078
5 사분면 버전(DRTN)에서 가장 두드러진 마름모를 찾는다. 예를 들어 다음과 같이 더 높은 평균과 더 작은 상대 분산을 기반으로 하는 단계
Figure 112020130380281-pct00079
DRTN 5 사분면 버전의 비 중첩 패치의 평균 및 분산을 로컬에서 분석하는 단계
Figure 112020130380281-pct00080
해당 측정 값에 따라 패치를 정렬하고 더 큰 패치만 가져 와서 인접한 경우 그룹화하고 결과 마름모의 정점 포인트을 추출하는 단계
Figure 112020130380281-pct00081
 및 / 또는
Figure 112020130380281-pct00082
 DRTN의 5 사분면 버전을 바코드를 포함하는 수천 개의 예시적인 이미지 쌍에서 마름모 정점 포인트을 입력으로 인식하고 그라디언트 DRTN의 마름모 위치를 출력으로 인식하도록 이전에 훈련된 네트워크 신경망에 전달하는 단계
Figure 112020130380281-pct00083
마름모의 상단 및 하단 정점 포인트의 s 인덱스 평균화하는 단계 : 정사각형 이미지 공간에서 바코드의 기울기이다.
Figure 112020130380281-pct00084
상단 정점 포인트과 하단 정점 포인트 사이의 d 축 차이를 정하는 단계 : 정사각형 이미지 공간에서 바코드 높이의 표시기이다.
Figure 112020130380281-pct00085
마름모의 왼쪽 및 오른쪽 정점 포인트 좌표를 정사각형 이미지 공간의 선 매개 변수로 변환하는 단계 및 두 선 사이의 교차점을 계산하는 단계: 즉, 정사각형 이미지 공간에서 바코드의 대략적인 중심이다.
Figure 112020130380281-pct00086
카메라의 이미지가 위에서 설명한 선택적 단계에서 크기가 조정 및 / 또는 늘어난 경우 현재 정사각형 이미지 좌표를 참조하는 바코드 위치에 대해 이전에 계산된 모든 표시기 및 제약 조건을 원래 이미지 좌표로 변환한다.
Figure 112020130380281-pct00087
바코드 디코더 소프트웨어가 감지하고 찾은 바코드의 중심을 통해 단일 선을 분석하는 바코드 디코더 소프트웨어에 의해 원래 이미지 좌표에서 파생 된 바코드의 높이, 기울기 및 중심 좌표를 사용하는 단계; 또는 바코드 중심을 가로 질러 세로로 가로 지르는 여러 선의 혼합을 분석한다.
본 명세서에 설명된 방법 및 방법 단계는 컴퓨터 시스템에 의해 수행될 수 있으며, 즉 예시적인 컴퓨터 시스템은 임의의 선행 방법 단계에 따른 방법을 수행하도록 구성될 수 있다.
상기 예시적인 컴퓨터 시스템은 예를 들어 스마트 장치, 예를 들어 카메라가 있는 스마트 모바일 장치를 포함할 수 있다.
더욱이, 하나 이상의 컴퓨터 판독 가능 저장 매체는 컴퓨팅 시스템의 하나 이상의 프로세서에 의해 실행될 때 하나 이상의 프로세서가 디지털 이미지에서 바코드를 검출하기 위한 여기에 설명된 방법 또는 방법 단계를 수행하도록 지시할 수 있는 명령을 저장했을 수 있다.
다음 도면은 본 발명의 더 나은 이해를 위한 예시적인 측면을 예시한다.
도 1a : 짝수 상승이 있는 예시적인 이산 선
도 1b : 홀수 상승을 가진 예시적인 이산 선
도 1c : 크기 8 x 8의 예시적인 이미지 배열에 대한 예시적인 이산 선
도 2a : 제1 사분면에 대한 이산 라돈 변환의 예
도 2b : 이산 라돈 변환의 제4 사분면의 예
도 3a : 예시적인 기울기 또는 상승 = 0 에 대한 이산 선 / 예상 및 그것들의 총 기여도
도 3b : 예시적인 기울기 또는 상승 = N-1에 대한 이산 선 / 예상 및 그 총 기여도
도 3c : 처음 두 사분면에 대한 고전적 기존 라돈 변환의 계산에 참여하는 픽셀 수의 예시적인 기여도.
도 3d : N 중심 변위에 대한 이산 라돈 변환의 계산에 참여하는 픽셀 수의 예시적인 기여도(DRTN)(처음 두 사분면)
도 4 : 이산 라돈 변환 계산의 다른 단계에 대한 예시적인 메모리 패턴 또는 메모리 위치
도 5 : 데이터 열 또는 데이터 스트라이프에 대한 예시적인 계산 방식
도 6 : 이미지에 포함된 바코드의 위치를 제한하는 예
도 1a, 도 1b 및 도 1c는 예시적으로 처리될 이미지 배열 또는 이미지(100, 105)를 가로 지르는 이산 선(103, 104)의 일부 양태를 도시하며, 이에 따라 여기에 설명된 이산 라돈 변환이 계산될 수 있다.
예를 들어, 도 1a 및 도 1b의 이미지 또는 이미지 배열(100)는 크기가 NN 일 수 있으며,
Figure 112020130380281-pct00088
 이고, n은 1보다 큰 정수이고, 여기서 각 이미지 배열 포인트는 0 < i, j < N이고 i, j는 정수인 예시적인 인덱스 쌍(i, j)이다.
상기 인덱싱은 단지 예시일 뿐이며, 특히 다른 인덱스 방식, 예를 들어 인덱스가 0 대신 1에서 시작하는 것이 사용될 수 있다는 것이 생각될 수 있다.
상기 예시적인 이미지 또는 이미지 배열 또는 이미지 도메인(100)은 하나의 축, 예를 들어 수평축을 따라 폭 M2의 2 개의 절반(101, 102)으로 분할될 수 있으며, 예를 들어 전반부(101)는 0 내지 N / 2-1의 폭에 걸쳐 있고 N / 2에서 N-1까지 폭에 걸친 후반부이다.
예시적으로 도시된 이산 선(103)은 절편 d 및 기울기 또는 상승 s에 따라 정의될 수 있으며, 여기서 d 및 s는 부호있는 정수일 수 있다.
도 1a의 상기 예시적인 이산 선(103)은 예시적인 짝수의 상승 단계를 포함하고 예시적인 배열 지점(0, d) 및 (N-1, d + s)을 연결하고, 여기서 상승 또는 상승의 전반부 이산 선(103)은 이미지 배열(100)의 전반부(101)에서 발생하고, 이산 선(103)의 상승 또는 상승의 후반부는 이미지 배열(100)의 후반부(102)에서 발생한다.
예시적인 참조 번호 108, 109는 이산 선(103)의 시작점과 끝점을 나타낸다.
도 1b의 예시적인 이산 선(104)은 홀수의 상승 단계를 포함하고 예시적으로 배열 지점(0, d) 및 (N-1, d+2(바닥(s / 2)) + 1)을 연결하고 이산 선(104)의 짝수의 상승 또는 상승 단계가 이미지 배열(100)의 전반부(101)에서 발생하고, 상기 짝수는 바닥((상승 단계의 수) / 2)이고, 바닥은 바닥 함수이고, 이산 선(104)의 나머지 상승 또는 상승 단계의 수는 이미지 배열(100)의 후반부(102)에서 발생한다.
예시적인 참조 번호(110, 111)는 이산 선(104)의 시작점 및 끝점을 나타낸다.
도 1c는 N = 8 인 이미지 배열(105)를 가로 지르는 두 개의 이산 선(106, 107)에 대한 특정 예를 도시한다.
여기에서 예시적인 이산 선(106)은 이미지 배열 포인트(0,4) 및(7,6)을 연결한다. 즉, 선(106)은 두 개의 상승 단계를 올라가며, 첫 번째 상승 단계는 제1 이미지 절반 또는 제1 이미지 영역에서 수행되고 제2 상승 단계는 제2 이미지 절반 또는 제2 이미지 도메인에서 수행된다.
예시적인 이산 선(107)은 이미지 도메인 포인트(0,-1) 및(7,4)를 연결한다. 단계는 제2 이미지 절반 또는 제2 이미지 영역에서 수행되고 나머지 상승 단계는 두 절반 사이에서 수행된다.
완전성을 위해, 처리될 이미지 배열를 가로 지르는 이산 선의 시작(또는 끝) 지점은 이미지 배열 외부, 즉 이미지 배열 포인트 또는 이미지 배열 인덱스 외부에 있을 수 있다는 점에 유의한다. 
도 2a는 처리될 이미지 또는 크기
Figure 112020130380281-pct00089
의 이미지 배열(200)에 대한 제1 사분면(204)에 대한 예시적인 이산 라돈 변환을 도시하며,
Figure 112020130380281-pct00090
이고, n은 1보다 큰 정수이고 N은 자연수이다.
예시적인 이미지 배열(200)은 예를 들어(x, y)-평면(201)에 설명될 수 있고, 0 <i,j< N를 갖는 예시적인 인덱스 쌍(i, j)에 의해 식별될 수있는 N x N 개의 이미지 배열 포인트를 포함할 수 있고, i, j는 정수이다.
예시적으로, 이미지 또는 이미지 배열(200)의 좌측 하부 코너는(x, y)-평면(201)의 원점, 즉 이미지 배열 포인트(0,0)와 일치한다.
이미지(200)에 대한 이산 라돈 변환이 수행될 수 있는 이산 선이 설명되는 영역은 매개 변수 절편 또는 변위 d 및 각도 또는 기울기 s의 영역에서 예시적으로 매개 변수화될 수 있다.
예시적인 것은 이산 라돈 변환이 계산될 수 있는 이산 선(202)이다.
상기 예시적인 이산 선(202)은 처리될 이미지 또는 이미지 배열(200)의 한 지점만을 가로 지르거나 접촉하고, 상기 예시적인 이산 선(202)은 예를 들어, 절편 또는 변위 d = -N + 1에서 시작하여 기울기 s = N 으로 오름차순으로 설명된다.
실제로 변위 d = -N +1의 경우, 제1 사분면에서 이산 라돈 변환의 0이 아닌 유일한 합은 N 단계 또는 위치, 즉 이산 선(202)이다. 변위 d= -1 까지 변위를 증가하면 , 영이 아닌(non-null) 상승의 수가 꾸준히 증가하고, 그리고 나서, 변위 d = 0에서 d = N-1까지 그리고 가능한 모든 상승에 대해 합이 영(null)이 아니다.
심화된 예로써, 이미지(200)의 하단 가장자리 또는 하단 행과 일치하는 예시적인 이산 선(210)이 도시되고, 절편 또는 변위 d = 0에서 시작하여 기울기 s= 0, 즉 수평하게 N 단계 동안 진행 또는 전진하는 것으로 설명될 수 있다.
이미지(200)를 가로 지르는 복수의 이산 선에 대해, 203으로 표시된 이산 라돈 변환의 예시를 적용하면, (d, s)- 평면(208)에서, 즉 특히 절편 또는 변위 d와 각도 또는 기울기 s에 의해 매개 변수화된 도메인에서 설명하는, 도메인 또는 도메인 공간에서 출력(204)이 생성된다.
특히, 묘사된 예시적인 계산된 출력(204)은 0°에서 45°까지의 기울기를 갖는 2 N 변위, 즉 제1 사분면의 이산 선의 기울기 범위를 포함하는 이산 선 세트에 대한 이산 라돈 변환을 수행함으로써 생성될 수 있다.
상기 출력(204)은 크기 N2 + N(N-1)/2이고 예시적으로 도시된 형상이다.
상기 출력(204)은 또한 사분면의 라돈 변환 계산, 더 정확하게는 제1 사분면의 라돈 변환 계산으로 지칭될 수 있다.
도 2b는 처리될 이미지(200)의 완전한 글로벌 이산 라돈 변환을 얻기 위해 라돈 도메인 또는 라돈 도메인 공간(209)에서 계산될 모든 4 개의 사분면(204, 205, 206, 207)의 형상을 예시적으로 도시한다.
완전성을 위해, 도 2b의 수평축은 각도 아탄(atan)(s/(N-1))에 의해 매개 변수화된다. 그러나 단순히 기울기 s로 매개 변수화 할 수도 있다.
위에서 언급했듯이, 사분면은 이산 라돈 변환이 계산될 필터링된 이미지 배열에 걸쳐 특정 범위의 기울기 또는 이산 선 각도를 정의할 수 있다.
예를 들어, 제1 사분면(204)은 0° 내지 45°(0 내지 π/ 4)의 이산 선 기울기 또는 각도를 커버 할 수 있고, 제2 사분면(205)은 45° 내지 90°(π / 4 내지 π / 2), 제3 사분면(206)은 -90°에서 -45°(-π / 2에서 -π / 4)의 이산 선 슬로프를 커버할 수 있고, 제4 사분면(207)은 -45°에서 0°( -π / 4 내지 -0)이다.
도 3a는 처리될 이미지 또는 이미지 배열(300)를 도시하며,
Figure 112020130380281-pct00091
, N = 8, 즉 8 x 8 픽셀을 포함하는 이미지를 갖는다.
이 도면은 라돈 변환이 수행될 수 있는 각도 또는 기울기 s = 0 이지만 2 N 개의 다른 절편 또는 변위 d를 갖는 예시적인 투영 세트 또는 이산 선(301) 세트를 추가로 도시한다. 
여기서 참조 번호(302)는 각각의 주어진 이산 선(301) 또는 각각의 주어진 프로젝션에 대해 상기 주어진 이산 선 또는 프로젝션에 대한 라돈 변환의 합산 항에 기여할 이미지 픽셀(305)의 수를 계산하는 예시적인 빈(bins) 세트를 나타낸다.
예시적인 쇼 케이스에서, 이미지(300)를 가로 지르거나 가로 지르는 임의의 투영 또는 불연속 선(301)에 대해, 그러한 투영 또는 불연속 선의 라돈 변환의 합산 항에 기여하는 이미지 픽셀(305)의 수는 8 일 것이다.
도 3b는 도 3a의 이미지 또는 이미지 배열(300)를 다시 예시하지만, 예시는 도 3a에 도시된 바와 같이, 즉 각도가 45°(또는 아탄(atan)(s /(N-1)) =) π / 4 또는 기울기 s = N-1 인 상이한 각도 또는 기울기를 갖는 예시적인 투영 세트 또는 이산 선(303) 세트를 도시한다.
다시 상기 각도 또는 기울기에 대한 2N 다른 절편 또는 변위 d가 표시되며, 이를 따라 라돈 변환이 수행될 수 있다.
도 3a와 유사하게, 참조 번호(304)는 각각의 주어진 이산 선(303) 또는 각각의 주어진 투영에 대해 주어진 이산 선 또는 주어진 투영을 위한 라돈 변환의 합산 항에 기여할 이미지 픽셀(305)의 수를 세는 예시적인 빈(bins) 세트를 나타낸다.
그러나, 도 3a에 도시된 경우와는 대조적으로, 이미지(300)를 가로 지르거나 가로 지르는 투영 또는 이산 선(303)을 따른 라돈 변환의 합산 항에 기여하는 이미지 픽셀(305)의 수는 다양하다.
예를 들어, 투영 또는 이산 선(306)의 경우, 즉 s = N-1 및 d = 0 인 경우, 라돈 변환의 합산 항에 기여할 이미지 픽셀(305)의 수는 8이 될 것이다. 임의의 다른 변위, 즉 임의의 다른 투영 또는 이산 선(302)에 대한 기여 이미지 픽셀(305)은 8보다 작을 것이다.
도 3c는 그 중에서도(d, s) 영역(313)에서 수행되는 종래 또는 고전적 라돈 변환의 2 개의 중앙 사분면(307, 308)의 각 값에 대한 계산에 참여하거나 픽셀 수를 예시적이고 개략적으로 도시한다. 도 3a 또는 도 3b의 크기 8 x 8의 예시적인 이미지 또는 이미지 배열(300), 여기서 윤곽선(311, 312)은 0이 아니거나 0이 아닌 라돈 변환의 합 항에 기여하는 픽셀의 수를 표시하는 라돈 변환의 값 또는 계산을 예시적으로 표시한다.
최신 기술과는 대조적으로, 본 발명은 사분면 당(이산) 라돈 변환을 보다 효율적으로 계산하게 하여 주어진 기울기를 갖는 각각의 주어진 이산 선에 대해 이산 라돈 변환이 다수의 변위가 이미지 배열 차원의 두 배 보다 작게 계산된다.
특히, 본 발명은 주어진 기울기를 갖는 주어진 이산 선의 N 개의 중심 변위(DRTN)에 대한 이산 라돈 변환을 계산할 수 있게 한다.
예시적으로, 2 개의 예시적인 도시된 사분면(307, 308)에 대해 주어진 기울기를 갖는 주어진 이산 선의 N 중심 변위(DRTN)에 대한 기여 픽셀의 수는 윤곽선(309 및 310)에 의해 표시된다.
도 3d는 예시적으로 재배열된 방식으로 2 개의 예시적으로 도시된 사분면(307, 308)에 대해 주어진 기울기를 갖는 주어진 이산 선의 N 개의 중심 변위(DRTN)에 대한 기여 픽셀(309, 310)의 수만을 도시하며, 이에 따라 예시적인 이점을 예시하고, 여기서, 사분면에 대한(d, s) 영역의 계산 또는 필요한 메모리 단위의 수 또는 규모가 2N x N에서 N x N으로 감소되었다.
다시 말해서, 본 발명은 메모리 및 계산 요구 사항을 상당히 절약할 수 있다.
도 4는 상이한 단계 m에 대한 각도 또는 기울기 s 및 절편 또는 변위 d의 도메인(405)에서의 데이터 메모리 패턴 또는 데이터 메모리 위치 400, 401, 402, 403, 404를 예시적이고 개략적으로 도시하며, m은 처리할 이미지 또는 이미지 배열, 예를 들어 N=16=2n=24 인 N x N 이미지 배열에 대한 이산 라돈 변환 계산의 0에서 n(예를 들면 n이 정수 n = 4)까지이다.
여기서 그리고 일반적으로, 단계 m이라는 용어는 특히 단계 m = 0, 예를 들어 400이 단계인 처리될 이미지 또는 이미지 배열에 대한 이산 라돈 변환의 계산 단계로 이해될 수 있다. 이산 라돈 변환에 대한 합산 항이 아직 계산되지 않았을 때 처음에 그리고 마지막 단계에서 예를 들어, m = n 인 단계 404, 정수 n 인
Figure 112020130380281-pct00092
, 모든 이산 라돈 변환 계산 단계가 수행되는 단계이다. 임의의 중간 단계, 예를 들어 401, 402, 403은 필요한 이산 라돈 변환 계산 단계의 일부만 수행된 단계, 즉 이산 라돈 변환이 부분적으로만 계산된 단계를 나타낼 수 있다.
여기서, 예시적으로 m = 0 인 초기 단계 또는 입력 단계를 나타내는 메모리 패턴(400)은 특히 처리할 입력 이미지 또는 이미지 배열에 대한 이산 라돈 변환을 컴퓨팅하는 동안 수행될 계산의 계산 값을 유지하거나 저장하기 위해 예약된 컴퓨터 시스템의 메모리 공간 또는 메모리 위치로 이해될 수 있다. .
입력으로 N x N 이미지 배열을 사용하는 기존의 이산 라돈 변환의 경우, 메모리 패턴 또는 데이터 메모리 위치의 크기는 최소한 각도 또는 기울기 위치 s(수평 축)에서 크기 N이고 절편에서 크기 2N 또는 변위 d(수직 축), 여기서, 예를 들어, 제1 단계에서, 메모리 패턴의 하반부(406)(교차 해칭 된 회색 채우기 색상으로 표시됨)는 0으로 채워질 수 있고 나머지 절반(407)(채우기 / 흰색), 예를 들어, 상반부는 예를 들어 처리 될 이미지 또는 이미지 배열의 이미지 픽셀의 강도 값, 예를 들어 크기 N x N으로 채워질 수 있다.
그러나, N x 2N 크기의 전체 메모리 공간을 요구하는 대신, 본 발명은 보다 감소된 메모리 공간을 사용하거나 보다 효율적인 메모리 공간 사용을 허용한다.
도시된 예에서, 백색 픽셀 또는 백색 영역은 특히 예를 들어 여기에 설명된 방법에 따라 계산될 필요가 있는(d, s) 도메인 공간(405)에서의 위치 또는 위치를 나타내는 것으로 이해될 수 있다.
그레이 / 크로스 해칭된 픽셀 또는 그레이 / 크로스 해칭된 영역은 특히 종래의 이산 라돈 변환 기술로 계산되어야 하는 (d, s) 도메인 공간(405)에서의 위치를 나타내는 것으로 이해될 수 있지만, 여기에서 제안된 방법은 피할 수 있다.
도 4에서 알 수 있듯이, 계산할 데이터의 열 또는 스트라이프는 점차적으로 아래쪽으로 이동할 수 있다. 
위에서 논의한 바와 같이, 데이터 스트라이프 또는 데이터 열 간의 계산 관계는 특정 단계 m + 1의 데이터가 이전 단계 m의 데이터에서 계산될 수 있음을 인식함으로써 이용될 수 있고, m은 0에서 n-1 범위의 정수이며, n은 정수이고
Figure 112020130380281-pct00093
이다.
특히, 예를 들어 N 개의 중심 변위(DRTN)가 있는 이산 라돈 변환에서 두 개의 데이터 스트라이프 또는 한 단계의 길이 N 인 데이터 열, 예를 들어 짝수 및 홀수 데이터 스트라이프 또는 데이터 열을 함께 추가하여 다음 단계의 데이터 스트라이프 또는 데이터 열이다.
즉, 각 단계에서 데이터 열 또는 데이터 스트라이프 당 N 개의 값만 계산하면 된다.
예를 들어 m = 3 인 중간 스테이지(403)의(수직) 길이 N의 예시적인 데이터 스트라이프 또는 데이터 열은 참조 번호 408로 표시되는 예시이다.
n 개의 단계에 대해 수행될 때 N 개의 중심 변위(DRTN)를 갖는 이산 라돈 변환의 이러한 예시적인 데이터 열 또는 데이터 스트라이프 기반 계산 방식은 마지막 단계(404)에서 참조 번호 409로 표시된 메모리 패턴 또는 메모리 영역 또는 풋 프린트로 수렴할 수 있다. 이는 입력 이미지 또는 이미지 배열의 크기, 예를 들어 크기 N x N이다. 그 예시적인 풋 프린트(409)는 충분하다고 간주되는 데이터 또는 데이터 계산의 부분에 대응하며 이는 도시된 데이터 부분(309 또는 310)과 유사하다. N = 8의 경우가 있지만 도 3d에서 수정되었다.
이에 비해, 종래의 이산 라돈 변환 계산 방식은 참조 번호 410으로 표시된 더 큰 메모리 패턴 또는 메모리 영역 또는 풋 프린트로 이어질 것이다.
예기치 않게 그리고 놀랍게도, 상기 풋 프린트(410)의 모든 회색 / 십자 해칭 픽셀이 0이 아닌 정보를 전달할 수 있지만, 이 정보의 가중치 또는 중요성이 미미하다는 것이 발견되었기 때문에 이 정보는 안전하게 무시될 수 있음이 발견되었다. 즉, N 중심 변위(DRTN)를 갖는 이산 라돈 변환으로부터 얻은 메모리 영역 또는 풋 프린트(409)에 포함된 정보(합계가 0이 아님)와 비교된다.
도 5는 참조로 표시된 예시적인 데이터 열 또는 데이터 스트라이프 S0, S1, S 및 S+1에 대한 예시적인 절편 또는 변위 d 및 각도 또는 기울기 s(d, s) 도메인 공간(502)에서 동작하는 계산 방식을 예시하는 예시도이고. 2 개의 예시적인 연속 단계 m 및 m + 1의 번호 503, 504, 505 및 506, 참조 번호 500 및 501로 표시이다.
전술한 바와 같이, 본 명세서에서 제안된 방법에서 이산 라돈 변환 계산의 주어진 단계에서 데이터 열 또는 데이터 스트라이프의 계산은 이전 단계의 데이터 열 또는 데이터 스트라이프의 계산을 사용할 수 있다.
예를 들어, 여기서 예시적인 단계 m + 1의 데이터는 이전 단계 m의 데이터로부터 계산될 수 있다. m은 0에서 n-1 범위의 정수이고, n은 정수이고
Figure 112020130380281-pct00094
이다. N은 처리될 이미지 또는 이미지 배열, 예를 들어 N x N 이미지 배열의 정수 차원이다.
인덱스 S, 짝수 및 S + 1, 홀수를 갖는 2 차원(d, s)-도메인(502)의 예시적인 2 개의 연속 데이터 열 또는 데이터 스트라이프는 스테이지 m + 1에 속하는 언급된 바와 같다.
이 열 각각의 원하는 N 값을 계산하기 위해 인덱스 So 및 Si가 있는 열에서 나오는 길이 N의 스트라이프 두 개를 더할 수 있다. 추가 할 열의 d 축을 따라 시작점은 값에 따라 달라질 수 있다.
Figure 112020130380281-pct00095
,
Figure 112020130380281-pct00096
Figure 112020130380281-pct00097
참조 번호 507, 508 및 509로 표시된다.
앞서 언급한 바와 같이, 예를 들어, 행 인덱스 top-
Figure 112020130380281-pct00098
에서 내림차순으로 내려가는 열 S의 N 데이터는, 행 인덱스 top-
Figure 112020130380281-pct00099
에서 내림차순으로 열 S0에 N 데이터를 추가한 결과이고, 도 5에서 행 인덱스 top-
Figure 112020130380281-pct00100
+
Figure 112020130380281-pct00101
에서 내림차순 행 S1 의 N 데이터이다. 이러한 영역 또는 스트라이프(510, 511, 512)는 실선상의 평평한 모서리 상자에 의해 프레임된 예시이다.
반면에 홀수 위치에 있는 열의 경우 수행할 관계는 행 인덱스 top-
Figure 112020130380281-pct00102
-
Figure 112020130380281-pct00103
에서 내려오는 S + 1 열의 N 데이터가, 행 인덱스 top-
Figure 112020130380281-pct00104
-
Figure 112020130380281-pct00105
에서 내림차순으로 열 S0의 N 데이터를 추가한 결과이고, 행 인덱스 top-
Figure 112020130380281-pct00106
-
Figure 112020130380281-pct00107
+
Figure 112020130380281-pct00108
+1로부터 내림차순으로 열 S1의 N 데이터이다. 도 5에서 영역 또는 줄무늬(513, 514, 515)는 점선의 둥근 모서리 상자로 둘러싸여 있다.
여기서, 예시적인 접두사 "상단"은 중간 결과를 저장하는데 사용되는 시간 버퍼의 최대 수직 인덱스 또는 차원을 나타낸다. 예를 들어 이 인덱스는 3N/2로 낮출 수 있으며, 이는 더 큰 인덱스 번호를 필요로 하는 최첨단 방법에 비해 개선된 것이다.
다르게 말하면, 여기에서 제안된 방법에서는 주어진 단계의 두 데이터 열이 함께 추가될 수 있고, 상기 합산의 결과는 다른 나중 단계에서 열을 계산할 수 있는 메모리 장소 또는 위치에 저장되거나 저장될 수 있다. 또는 그것을 찾을 것이다.
도 6은 이미지(601)에 내장된 바코드(612)의 위치를 제한하기 위한 예를 제공하며, 예를 들어 스마트 폰과 같은 모바일 장치에 통합된 디지털 카메라에 의해 캡처된 이미지를 제공한다.
도시된 예에서, 예시적인 이미지(601) 또는 이미지 배열 도메인(615)의(x, y)-평면 이미지 배열은 특히 선형 1 차원 바코드(612)를 갖는 상품, 예를 들어 가격 태그의 라벨 또는 태그(614)를 포함한다.
N 개의 중심 변위(DRTN)를 사용하여 이산 라돈 변환을 해당 이미지에 적용하기 전에 이미지 배열에 필터를 적용할 수 있다. 이 필터는 앞에서 설명한 것처럼 특히 다음과 같이 이산 라돈 변환의 출력 분석을 용이하게 할 수 있다. N 개의 중심 변위(DRTN)는 이미지(601)에 적용되며, 보다 정확하게는 이미지(601)의 필터링된 버전(도시되지 않음)에 적용될 수 있다.
왼쪽에는 이미지(601)에 적용되거나 이미지의 필터링된 버전(도시되지 않음)에 적용된 N 개의 중심 변위(DRTN)를 갖는 예시적인 이산 라돈 변환의 출력(600)이 가능한 예시적으로 도시되어 있다. 이 출력은(d, s) 도메인 또는 도메인 공간(607)에 설명되어 있으며, d는(수직) 변위 또는 절편이고 s는 각도 또는 기울기이다.
위에서 언급한 바와 같이, 여기에 설명된 이산 라돈 변환은 이미지(601)에 내장된 바코드(612)의 위치가 유도되거나 제약될 수 있는 (d, s) 도메인 또는 도메인 공간(607)에서 특정 또는 특수 패턴을 생성할 수 있다.
여기에 예시된 것은 4 개의 정점 포인트(602, 603, 604, 605)을 포함하는 예시적인 사각형 모양, 예를 들어 마름모 모양의 패턴(606)이며, 이는 앞서 설명된 바와 같이 쉽게 검출될 수 있고 이로부터 바코드(612)의 위치에 대한 제약이 이미지 배열 도메인(615)의(x, y)-평면이 유도될 수 있다.
보다 정확하게는 라돈 변환 출력에서 패턴의 감지된 가장자리 또는 정점 포인트를 디지털 이미지에 있는 바코드의 위치를 제한하기 위해 이미지 배열의 이산 선으로 다시 변환할 수 있다. 따라서 디지털 이미지(601)에 존재하는 바코드(612)의 위치를 제한하는 것은 특히 검출된 패턴(606)의 검출된 상부 정점 포인트(604) 및 검출된 하부 정점 포인트(605)의 수직 인덱스 또는 절편 또는 기울기(d)를 평균하는 것을 포함할 수 있다. 처리될 이미지(601)에서 바코드의 기울기 또는 각도를 제한할 수 있다.
디지털 이미지에 존재하는 바코드의 위치를 제한하는 것은 검출된 패턴 (606)의 두 개의 검출된 측면 정점 포인트(602, 603), 예를 들어 좌측(602) 및 우측 정점 포인트(603)의 수평 인덱스 또는 기울기 또는 각도의 차이를 계산하는 것을 더 포함할 수 있다. .
더욱이, 검출된 정점 포인트를 이미지 배열에서 별개의 선으로 다시 변환하는 것은 2 개의 검출된 측면 정점 포인트(602, 603), 예를 들어 왼쪽(602) 및 오른쪽 정점 포인트 및/또는 상단(604) 및 하단 정점 포인트(605) 또는 이미지(601)의 이미지 배열 도메인(615)의(x, y)-평면에서 이산 선의 선 파라미터로의 정점 포인트의 임의의 다른 조합을 변환하는 것을 포함할 수 있다. .
예를 들어, 두 개의 이산 선(608, 609)의 교차점(613)이 계산될 수 있으며, 여기서 상기 두 개의 이산 선(608, 609)은 두 개의 검출된 측면 정점 포인트(602, 603)을 변환함으로써 획득되고, 예를 들면, 이미지(601)의 이미지 배열 도메인 (615)의 (x, y)-평면을 향한 왼쪽(602) 및 오른쪽 정점 포인트이다.
예를 들어, 상기 교차점(613)은 처리될 이미지(601)에서 바코드의 중심의 위치를 제한할 수 있다.
예를 들어, 검출된 상단(604) 및 하단 정점 포인트(605)를 이미지(601)의 이미지 배열 도메인(615)의(x, y)-평면으로 변환하면, 이미지(601)의 바코드의 방향 및 높이를 제한할 수 있는 선(610 및 611)이 생성될 수 있다.
특히, 예를 들어, 필터링된 이미지 배열의 이산 라돈 변환 출력의 라돈 d 및 s 매개 변수 공간으로부터 검출된 정점 포인트를 이미지 내선의 x 및 y 매개 변수 공간으로 변환하는 것은 예를 들어, 1 사분면에 대해 관계식 y = d + s /(N -1) x를 계산한다.
즉, 이미지에 바코드가 존재하면 DRTN의 그라데이션 변환에서 사각형 또는 마름모 모양의 영역 또는 패턴을 생성할 수 있고, 이는 바코드와 관련이 없는 이미지 특징에서 비롯된 다른 영역 또는 패턴의 나머지 부분보다 더 큰 값을 갖는 동시에 상대적인 분산이 더 작은 것으로 두드러진다. 
일반적으로, 특히 여기에 표시된 것과 같은 분리된 바코드(612)의 경우에는 이러한 두 가지 특성(평균값 및 상대 분산)에 기반한 간단한 로컬 검출기로 충분하다.
그러나, 고주파수를 갖는 영역 또는 바코드와 관련되지 않은 이미지 특징이 바코드 옆에 존재하는 경우, 이를 위해 훈련된 신경망에 의해 사각형 또는 마름모 모양의 영역 또는 패턴(606)이 검출되고 위치되는 것이 편리하다.
예시적인 것은 검출될 바코드(612)와 관련되지 않은 텍스트 또는 심볼(617, 618)과 같은 이미지(600)의 특징으로부터 발생하는 추가 인공물 패턴(616)이다. 이들은 노이즈로 보일 수 있다. 그러나, 도시된 바와 같이, 사변형, 예를 들어 마름 모형 패턴(606)은 노이즈 요인에 대한 충분한 큰 신호를 가지며, 따라서 이러한 비바 코드 관련 특징은 바코드의 검출 및 위치 파악을 방해하지 않을 것이다.
그 다음에는 도 1a, 도 1b, 도 1c, 도 2a, 도 2b, 도 3a, 도 3b, 도 3c, 도 3d, 도 4, 도 5 및 도 6에서 참조 번호는 다음과 같이 할당된다.
100 예시적인 이미지 / 이미지 배열
101 이미지 배열의 예시적인(제1 ) 절반/ 가로축을 따라 분할된 이미지
102 이미지 배열의 예시적인(제2 ) 절반/ 가로축을 따라 분할된 이미지
103 예시적인 이산 선
104 예시적인 이산 선
105 예시적인 이미지 / 이미지 배열
106 짝수 상승을 가진 예시적인 이산 선 / 상승 단계가 있는 짝수 숫자
107 홀수 상승을 가진 예시적인 이산 선 / 상승 단계가 있는 홀수 숫자
108 예시적인 출발점
109 예시적인 끝점
110 예시적인 출발점
111 예시적인 끝점
200 처리할 예시 이미지 또는 이미지 배열
201 이미지 배열 도메인의(x, y)-평면의 예시적인 원점
202 예시적인 이산 선
203 예시적인 라돈 변환
204 라돈 변환의 예시적인 출력, 예시적인 1 사분면
205 예시적인 2 사분면
206 예시적인 3 사분면
207 예시적인 4 사분면
208 라돈 도메인의(d, s)-평면의 예시적인 기원
209 수평축이 아탄(atan)(s /(Nl))로 매개 변수화된 라돈 도메인의 예시적인 원점
300 예시적인 이미지 또는 이미지 배열
301 예시적인 투영 세트 또는 이산 선 세트
302 각각의 이산 선 또는 각각의 프로젝션에 대해 상기 주어진 프로젝션 또는 선에 대한 라돈 변환의 합산 항에 기여할 이미지 픽셀의 수를 계산하는 예시적인 빈(bins) 세트의 예시
303 예시적인 투영 세트 또는 이산 선 세트
304 각각의 이산 선 또는 각각의 프로젝션에 대해 상기 주어진 프로젝션 또는 선에 대한 라돈 변환의 합산 항에 기여할 이미지 픽셀의 수를 계산하는 예시적인 빈(bins) 세트의 예시
305 예시적인 이미지 픽셀
306 예시적인 투영 / 예시적인 이산 선
307 예시적인 (제1 ) 사분면
308 예시적인 (제2 ) 사분면
309 예시적인 윤곽
310 예시적인 윤곽
311 예시적인 윤곽
312 예시적인 윤곽
313 d는(수직) 변위 또는 절편이고 s는 각도 또는 기울기인 예시적인(d, s) 도메인 또는 도메인 공간
400 예시적인 데이터 메모리 패턴 또는 초기 단계 또는 입력 단계에서의 데이터 메모리 위치
401 중간 단계에 대한 예시적인 데이터 메모리 패턴 또는 데이터 메모리 위치, ,예를 들면, 제1 단계
402 중간 단계에 대한 예시적인 데이터 메모리 패턴 또는 데이터 메모리 위치, 예를 들면 제2 단계
403 중간 단계에 대한 예시적인 데이터 메모리 패턴 또는 데이터 메모리 위치, 예를 들면 제3 단계
404 예시적인 최종 단계에 대한 예시적인 데이터 메모리 패턴 또는 데이터 메모리 위치, 예를 들면 출력 단계
405 예시적인(d, s) 도메인 또는 도메인 공간, d는(수직) 변위 또는 절편이고 s는 각도 또는 기울기
406 입력 단계에서 예시적인 메모리 패턴의 하반부
407 입력 단계에서 예시적인 메모리 패턴 상반부
408 (수직) 길이 N의 예시적인 데이터 스트라이프 또는 데이터 열
409 N 개의 중심 변위(DRTN)를 사용한 이산 라돈 변환의 출력으로서 마지막 단계의 예시적인 메모리 영역
410 종래의 이산 라돈 변환의 출력으로서 마지막 단계의 예시적인 메모리 영역
500 (d, s) 도메인 또는 도메인 공간에서 N 개의 중심 변위(DRTN)를 갖는 이산 라돈 변환의 계산의 예시적인 단계, 예를 들어 단계 m, d는 (수직) 변위 또는 절편이고 s는 각도 또는 기울기
501 (d, s) 도메인 또는 도메인 공간에서 N 중심 변위(DRTN)를 사용하는 이산 라돈 변환 계산의 예시적인 단계, 예를 들어 단계 m + 1, d는 (수직) 변위 또는 절편이고 s는 각도 또는 기울기
502 예시적인(d, s) 도메인 또는 도메인 공간, d는(수직) 변위 또는 절편이고 s는 각도 또는 기울기
503 예시적인 데이터 열 또는 인덱스 So
504 예시적인 데이터 열 또는 인덱스 S1
505 예시적인 데이터 열 또는 인덱스 S
506 예시적인 데이터 열 또는 인덱스 S + 1
507 d 축에서(수직) 오프셋의 예시 값
508 d 축에서(수직) 오프셋의 예시 값
509 d 축에서(수직) 오프셋의 예시 값
510 예시적인 데이터 스트라이프
511 예시적인 데이터 스트라이프
512 예시적인 데이터 스트라이프
513 예시적인 데이터 스트라이프
514 예시적인 데이터 스트라이프
515 예시적인 데이터 스트라이프
516 예시적인 데이터 스트라이프
600 N 개의 중심 변위(DRTN)를 갖는 예시적인 이산 라돈 변환의 예시적인 출력
601 예시 이미지, 예를 들면, 모바일 장치에 통합된 디지털 카메라로 캡처한 이미지
602 예시적인 정점 포인트
603 예시적인 정점 포인트
604 예시적인 정점 포인트
605 예시적인 정점 포인트
606 예시적인 패턴, 예를 들면 예시적인 사각형 모양, 예를 들어 마름모 모양, 패턴
607 예시적인(d, s) 도메인 또는 도메인 공간, d는(수직) 변위 또는 절편이고 s는 각도 또는 기울기
608 감지된 정점 포인트에서 파생된 이미지 배열 도메인의(x, y) 평면에 있는 예시적인 선
609 감지된 정점 포인트에서 파생된 이미지 배열 도메인의(x, y) 평면에 있는 예시적인 선
610 감지된 정점 포인트에서 파생된 이미지 배열 도메인의(x, y) 평면에 있는 예시적인 선
611 감지된 정점 포인트에서 파생된 이미지 배열 도메인의(x, y) 평면에 있는 예시적인 선
612 예시 바코드
613 이미지 배열 도메인의(x, y) 평면에서 바코드의 예시적인 중심 위치
614 예시적인 라벨
615 이미지 또는 이미지 배열 도메인의 예시(x, y) 평면
616 예시적인 인공물 패턴, 이미지 특징과 관련된 논-바코드(non-barcod)로부터 기인한 패턴
617 바코드와 관련없는 이미지의 예시적인 특징
618 바코드와 무관한 이미지의 예시적인 특징

Claims (15)

  1. 2 차원 디지털 이미지 배열로 표현되는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법에 있어서,
    이미지 배열에 필터를 적용하는 단계;
    이산 라돈 변환은 필터링된 이미지 배열를 가로 지르는 복수의 이산 선에 대해 계산되며, 필터링된 이미지 배열의 이산 라돈 변환을 계산하는 단계;
    여기서 주어진 기울기를 갖는 각각의 주어진 이산 선에 대해 이산 라돈 변환은 주어진 이산 선의 여러 다른 변위에 대해 계산되고, 여기서 변위의 수는 이미지 배열의 치수의 2 배 미만이며,
    필터링된 이미지 배열의 이산 라돈 변환 출력에서 패턴의 정점 포인트를 감지하는 단계;
    디지털 이미지에 존재하는 바코드의 위치를 제한하기 위해 감지된 정점 포인트를 이미지 배열의 이산 선으로 다시 변환하는 단계;
    를 포함하는, 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  2. 청구항 1에 있어서, 주어진 기울기를 갖는 주어진 이산 선에 대한 변위는 절편(intercept), 예를 들어 수직 절편(vertical intercept)인 것을 특징으로 하는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  3. 청구항 1에 있어서, 필터는 구배 필터(gradient filter)인 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  4. 청구항 1에 있어서, 상기 패턴은 사각형 모양, 예를 들어 마름모 모양을 갖는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  5. 청구항 1에 있어서, 주어진 기울기에 대한 이산 라돈 변환은 이미지 배열의 중심에 가장 가까운 이산 선의 변위의 수 N에 대해, 여기서 N은 정수이고, 배열의 차원인, 계산되는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  6. 청구항 1에 있어서, 디지털 이미지가 정사각형이 아닌 경우, 디지털 이미지는 정사각형 이미지, 즉, N이 정수인 크기 의 이미지 배열(image array)로 리사이즈(resize)되는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  7. 청구항 1에 있어서, 필터링된 이미지 배열의 이산 라돈 변환을 계산하는 단계는 4 개의 사분면에 대해 수행되며, 예를 들어, 제1 사분면은 0°에서 45°까지의 이산 선 기울기를 커버하고, 두 번째 사분면은 사분면은 45° 내지 90°의 이산 선 기울기를 커버하고, 세 번째 사분면은 -90° 내지 -45°의 이산 선 기울기를 커버하고, 네 번째 사분면은 -45° 내지 0°의 이산 선 기울기를 커버하며, 여기서 회전 및 전치 카피(copy) 제 5 사분면을 정의하는 제1 사분면의 계산된 라돈 변환은 제4 사분면에 부가되는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  8. 청구항 1에 있어서, 필터링된 이미지 배열의 이산 라돈 변환을 계산하는 단계는 필터링된 이미지 배열의 열마다 수행되는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  9. 청구항 1에 있어서, 홀수 및 짝수 열의 계산을 위해 별도의 메모리 버퍼가 할당되는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  10. 청구항 1에 있어서, 패턴의 정점 포인트의 감지는 이산 라돈 변환의 출력에서의 강도 값 및 분산에 기초하고, 그리고/또는 감지된 패턴의 정점 포인트의 감지에 기초하는, 예를 들어 사변형은 신경망의 수단을 통해 수행되는, 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  11. 청구항 1에 있어서, 디지털 이미지에 존재하는 바코드의 위치의 제한은 감지된 상부 정점 포인트의 수직 인덱스 및 감지된 패턴의 감지된 하부 정점 포인트를 평균하는 단계를 포함하는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  12. 청구항 11에 있어서, 디지털 이미지에 존재하는 바코드의 위치의 제한은 감지된 패턴의 2개의 감지된 측면 정점 포인트, 예를 들어 좌측 및 우측 정점 포인트의 수평 인덱스의 차이를 계산하는 단계를 포함하는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  13. 청구항 1 에 있어서, 감지된 정점 포인트를 이미지 배열에서 이산 선으로 다시 변환하는 단계는, 2개의 감지된 측면 정점 포인트, 예를 들어 좌측 및 우측 정점 포인트를 이미지 배열에서 2개의 이산 선의 선 파라미터로 변환하고 상기 2개의 이산 선의 교차점을 계산하는 디지털 이미지에서 바코드를 감지하는 컴퓨터 구현 방법.
  14. 청구항 1 내지 청구항 13 중 어느 한 항에 따른 방법을 수행하도록 구성된 컴퓨터 시스템.
  15. 청구항 14에 따른 상기 컴퓨터 시스템은 카메라를 가진 모바일 장치를 포함하는 컴퓨터 시스템.
KR1020207034731A 2018-05-15 2019-05-09 바코드 감지 방법 KR102562904B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP18382333.5 2018-05-15
EP18382333.5A EP3570205B1 (en) 2018-05-15 2018-05-15 Barcode detection method
PCT/EP2019/061971 WO2019219512A1 (en) 2018-05-15 2019-05-09 Barcode detection method

Publications (2)

Publication Number Publication Date
KR20210070235A KR20210070235A (ko) 2021-06-14
KR102562904B1 true KR102562904B1 (ko) 2023-08-02

Family

ID=62235904

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207034731A KR102562904B1 (ko) 2018-05-15 2019-05-09 바코드 감지 방법

Country Status (11)

Country Link
US (1) US11379680B2 (ko)
EP (1) EP3570205B1 (ko)
JP (1) JP7200265B2 (ko)
KR (1) KR102562904B1 (ko)
CN (1) CN112166431A (ko)
CA (1) CA3098607C (ko)
ES (1) ES2848842T3 (ko)
PT (1) PT3570205T (ko)
RU (1) RU2764027C1 (ko)
SG (1) SG11202010788VA (ko)
WO (1) WO2019219512A1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060091221A1 (en) 2004-10-29 2006-05-04 Symbol Technologies, Inc. Method and apparatus for extending the range of a product authentication device
DE102009016598A1 (de) 2009-04-08 2010-10-14 Continental Teves Ag & Co. Ohg Zweidimensionaler Symbolcode und Verfahren zum Lesen des Symbolcodes
US20130048731A1 (en) 2011-08-25 2013-02-28 International Business Machines Corporation System for recovering a barcode

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0512438A (ja) * 1991-07-05 1993-01-22 A T R Shichiyoukaku Kiko Kenkyusho:Kk ハフ変換による線分抽出方法
JP3110167B2 (ja) * 1992-09-16 2000-11-20 富士通株式会社 階層型ニューラルネットワークを用いた物体認識方式
JPH06259541A (ja) * 1992-10-30 1994-09-16 Toshiba Corp 画像歪み補正方法およびそのシステム
JP2835274B2 (ja) * 1994-02-24 1998-12-14 株式会社テック 画像認識装置
CA2313803A1 (en) * 2000-07-11 2002-01-11 Dong-Chan He Automatic extraction of linear features from digital imagery
SE0301143D0 (sv) * 2003-04-17 2003-04-17 C Technologies Ab Sätt och anordning för inläsning av data
EP2093697B1 (en) * 2008-02-25 2017-08-23 Telefonaktiebolaget LM Ericsson (publ) Method and arrangement for retrieving information comprised in a barcode
ES2537333T3 (es) * 2008-07-24 2015-06-05 The Regents Of The University Of California Aparato y procedimiento para formación de imágenes mediante la transformada de Fourier dispersiva
US8644547B2 (en) * 2008-11-14 2014-02-04 The Scripps Research Institute Image analysis platform for identifying artifacts in samples and laboratory consumables
JP2012523598A (ja) * 2009-04-08 2012-10-04 コンチネンタル・テベス・アーゲー・ウント・コンパニー・オーハーゲー 2次元シンボルコードおよびそのシンボルコードを読取るための方法
GB2487242A (en) * 2011-01-17 2012-07-18 Sony Corp Interpolation Using Shear Transform
EP2797514A1 (en) * 2011-12-30 2014-11-05 Koninklijke Philips N.V. Method and apparatus for needle visualization enhancement in ultrasound imaging
WO2015077493A1 (en) * 2013-11-20 2015-05-28 Digimarc Corporation Sensor-synchronized spectrally-structured-light imaging
CN105069394B (zh) * 2015-07-23 2017-10-10 福建联迪商用设备有限公司 二维码加权平均灰度法解码方法及系统
US10628736B2 (en) * 2015-09-24 2020-04-21 Huron Technologies International Inc. Systems and methods for barcode annotations for digital images
JP2018055495A (ja) * 2016-09-29 2018-04-05 日本電産サンキョー株式会社 図形パターン認識装置および図形パターン認識方法
RU2651176C1 (ru) * 2016-11-17 2018-04-18 Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет" Способ обработки сигналов для обнаружения и определения толщины прямых линий на изображении
CN106875360A (zh) * 2017-02-17 2017-06-20 广州智能装备研究院有限公司 一种消除图像运动模糊的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060091221A1 (en) 2004-10-29 2006-05-04 Symbol Technologies, Inc. Method and apparatus for extending the range of a product authentication device
DE102009016598A1 (de) 2009-04-08 2010-10-14 Continental Teves Ag & Co. Ohg Zweidimensionaler Symbolcode und Verfahren zum Lesen des Symbolcodes
US20130048731A1 (en) 2011-08-25 2013-02-28 International Business Machines Corporation System for recovering a barcode

Also Published As

Publication number Publication date
JP7200265B2 (ja) 2023-01-06
RU2764027C1 (ru) 2022-01-12
KR20210070235A (ko) 2021-06-14
PT3570205T (pt) 2021-01-21
SG11202010788VA (en) 2020-11-27
ES2848842T3 (es) 2021-08-12
JP2021524106A (ja) 2021-09-09
US20210089736A1 (en) 2021-03-25
CN112166431A (zh) 2021-01-01
EP3570205B1 (en) 2020-11-04
US11379680B2 (en) 2022-07-05
WO2019219512A1 (en) 2019-11-21
CA3098607A1 (en) 2019-11-21
EP3570205A1 (en) 2019-11-20
CA3098607C (en) 2023-09-26

Similar Documents

Publication Publication Date Title
US9245200B2 (en) Method for detecting a straight line in a digital image
CN102243704B (zh) 用于二维码的定位系统、二维码的识别方法及设备
US9779324B2 (en) Method and device for detecting interest points in image
Liu et al. Restoring camera-captured distorted document images
CN101727580A (zh) 图像处理装置、电子介质和图像处理方法
CN104504387A (zh) 文本图像的校正方法和装置
CN101882220B (zh) 一种基于动态模板的条码图像校正方法及校正点获取方法
CN106909869A (zh) 一种矩阵式二维码的采样网格划分方法及装置
CN101833644A (zh) 一种基于动态模板的校正图形搜索方法
KR101725501B1 (ko) 문자 인식 방법 및 장치
KR102562904B1 (ko) 바코드 감지 방법
CN101882213B (zh) 一种条码图像采样方法
Climer et al. Local lines: A linear time line detector
JP6080424B2 (ja) 対応点探索装置、そのプログラムおよびカメラパラメータ推定装置
Coeurjolly et al. Separable distance transformation and its applications
CN101908144B (zh) 一种条码图像校正方法及校正点获取方法
US20230267642A1 (en) Fiducial location
Wang et al. Efficient Euclidean distance transform using perpendicular bisector segmentation
CN114611540A (zh) 基于数字图像处理的一维码图像区域识别方法、电子设备
KR100835544B1 (ko) 샘플들의 콜렉션 필터링
JPH0896072A (ja) ページ傾き検出方法
JP4267965B2 (ja) バーコード読取装置
US20230124210A1 (en) Encoded substrate, coordinate-positioning system and method thereof
CN117725948A (zh) 二维码定位方法、装置、电子设备和存储介质
KR100576942B1 (ko) 방향 필터링을 이용한 스테레오 영상의 정합 시스템 및 그방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant