KR20110053417A - 디지털 비디오 필터 및 화상 처리 - Google Patents

디지털 비디오 필터 및 화상 처리 Download PDF

Info

Publication number
KR20110053417A
KR20110053417A KR1020117001102A KR20117001102A KR20110053417A KR 20110053417 A KR20110053417 A KR 20110053417A KR 1020117001102 A KR1020117001102 A KR 1020117001102A KR 20117001102 A KR20117001102 A KR 20117001102A KR 20110053417 A KR20110053417 A KR 20110053417A
Authority
KR
South Korea
Prior art keywords
color
pixel
processor
fifo
coordinate
Prior art date
Application number
KR1020117001102A
Other languages
English (en)
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 KR20110053417A publication Critical patent/KR20110053417A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/646Circuits for processing colour signals for image enhancement, e.g. vertical detail restoration, cross-colour elimination, contour correction, chrominance trapping filters

Abstract

퓨리어 변환에 대한 필요성일 일소하여, 시간을 소모하는 곱셈 및 가산을 일소하는 비디오 디지털 컬러 픽셀 필터링 및 디지털 화상 처리를 위한 장치를 개시한다. 실시간 쌍방향 디지털 화상 처리의 레이턴시 문제점을 최소화하기 위하여 FIFO 메모리와 연계하여 동작하는 새로운 분산형 컴퓨터 아키텍처를 활용한다. 분산형 처리 아키텍처는 공장 어셈블리 라인과 유사한 방식으로 동작하도록 설정되는 것으로서, 여기서, FIFO들은 반처리된 데이터를 하나의 프로세서에서 또 다른 프로세서로 전달한다. 6의 자유도에서 움직이는 이동 물체들의, 거리 및 회전 벡터들을 포함하는 모션 벡터들을 측정하기 위하여 고유한 메모리 기반의 시스템이 사용된다.

Description

디지털 비디오 필터 및 화상 처리{DIGITAL VIDEO FILTER AND IMAGE PROCESSING}
본 발명은 디지털 비디오 컬러화 필터링 및 하드웨어와 소프트웨어로 구성되는 이미지 처리에 관한 것으로서, 특히, 화상 인식, 화상 식별, 및 화상 트랙킹에 관한 것이다.
본 발명은 컬러화 비디오 화상의 효율적인 필터링에 의해 복소 퓨리어 변환을 사용할 필요를 일소하는 것에 관한 것이다. 퓨리어 변환은 자신의 특성상 디지털 화상 처리 속도를 저하시킨다. 또한, 6의 공간 자유도에서 다색채 물체들의 출현, 소멸, 및 방향과 회전의 변화를 식별하기 위하여, 통상적인 자동차 어셈블리 라인과 유사한 고유한 컴퓨터 아키텍처를 활용한다.
다양한 필터링 및 화상 처리 시스템들이 활용가능하게 되어 있으며, 이 중 어느 것도 하나의 기술적인 측면 또는 복수의 기술적인 측면에서 이러한 어플리케이션의 능력을 제공하지는 않는다. 이러한 필터링 및 화상 처리 시스템은 이동하는 물체의 실시간 쌍방향 모션 캡쳐 및 쌍방향 응답에 필요한 임계 속도를 제공하지 못한다. 이하는 특허 번호와 그들 몇몇에 대한 일부 설명이다.
「Gindele; Edward B. U.S. 20050089240」에서는, 색조 스케일(tone scale)을 개선하기 위한 디지털 화상 처리 방법으로서, 복수의 베이스 디지털 화상들과 복수의 잔여 디지털 화상들을 포함하는 디지털 화상의 다해상도 화상 표현을 생성하는 단계; 텍스쳐 감소 베이스 디지털 화상을 생성하기 위하여 기저 디지털 화상에 대하여 텍스쳐 감소 공간 필터를 적용하는 단계; 텍스쳐 감소 베이스 디지털 화상들과 잔여 디지털 화상들을 조합하여 텍스쳐 감소 디지털 화상을 생성하는 단계; 디지털 화상으로부터 텍스쳐 감소 디지털 화상을 뺄셈하여 텍스쳐 디지털 화상을 생성하는 단계; 압축 색조 스케일 함수를 텍스쳐 감소 디지털 화상에 적용하여 화상의 적어도 일부분에서 압축된 색조 스케일을 갖는 색조 스케일 조정 디지털 화상을 생성하는 단계; 및 텍스쳐 디지털 화상과 색조 스케일 조정 디지털 화상을 조합하여 처리된 디지털 화상을 생성하는 단계를 포함하며, 디지털 화상의 콘트라스트는 디지털 화상의 텍스쳐의 콘트라스트를 압축하지 않고서 개선되는, 디지털 화상 처리 방법을 개시하고 있다.
「Srinivsan; Sridhar U.S. 20030194009」에서는, 각종 기법들과 도구들을 개시하고 있다. 예를 들어, 모션 추정 및 보상 중에, 비디오 인코더는 기준 비디오 프레임들의 쿼터-픽셀 위치에서의 픽셀 값들을 계산하는 때에 근사 바이큐빅 필터링(approximate bicubic filtering)을 사용한다. 또는, 모션 보상 중에, 비디오 디코더는 쿼터-픽셀 위치에서의 픽셀 값들을 계산하는 때에 근사 바이큐빅 필터링을 사용한다.
「Deering; Michael F. U.S. 20030063095」에서는, 그래픽 프로세서, 샘플 버퍼, 및 샘플-픽셀 계산부를 포함하는 그래픽 시스템을 개시하고 있다. 그래픽 프로세서는 수신된 그래픽 데이터의 스트림에 응답하여 샘플들을 생성한다. 샘플 버퍼는 샘플들을 저장하도록 구성될 수 있다. 샘플-픽셀 계산부는 렌더링된 샘플들을 필터를 이용하여 복수의 출력 픽셀들을 생성하도록 프로그램 가능하다. 네거티브 로브(negative lobes)를 갖는 필터가 사용될 수 있다. 그래픽 시스템은 제1 프레임에 대하여 음성도(negativity) 값을 계산한다. 음성의 값은 제1 프레임 내의 픽셀 음성도의 량을 측정한 것이다. 특정 문턱치 위인 음성도 값에 응답하여, 그래픽 시스템은 후속하는 프레임들에 대한 음성도 값을 감소시키기 위하여 필터 함수 및/또는 필터 지원(filter support)을 조절한다.
「Debes; Eric U.S. 7,085,795」에서는, 콘텐츠 데이터의 효율적인 필터링 및 콘볼루션을 위한 장치 및 방법을 개시하고 있다. 이 방법에서는, 데이터 셔플 인스트럭션을 실행하는 것에 응답하여, 목적지 데이터 저장 장치 내의 선택된 데이터 부분을 구성하는 것(organizing)을 포함한다. 데이터의 부분은 계수 데이터 저장장치 내의 계수들의 배치에 따라서 구성된다. 일단 구성되면, 곱셈-누산 인스트럭션을 실행함에 따라서 복수의 합산된 곱의 쌍들이 생성된다. 복수의 곱의 쌍들은 목적지 데이터 저장장치 내의 데이터를 계수 데이터 저장장치 내의 계수들과 곱셈하여 형성된다. 일단 생성되면, 인접한 합산된 곱의 쌍들이 인접한 가산 인스트럭션을 실행함에 따라서 가산된다. 인접한 합산된 곱의 쌍들이 목적지 데이터 저장장치 내에서 가산되어 하나 이상의 데이터 처리 동작 결과를 형성한다. 일단 하나 이상의 데이터 처리 동작 결과가 형성되면, 결과들이 메모리 장치 내에 저장된다.
「Bolle; Rudolf M. U.S. 20020146178」에서는, 자동 지문 인증 또는 식별 시스템을 개시하고 있으며, 획득 프로세서의 제한에 의해 지문 화상 획득이 심각하게 영향을 받는다. 2개의 입력 모드, 즉, 종이 기록으로부터 잉크로 된 지문을 스캐닝 하거나 또는 라이브 스캔 지문 스캐너를 이용하여 바로 스캐닝하는 것은, 카메라 내의 표준 잡음에 더하여 입력에 있어서 이하의 잡음원으로 고통받는다. 불균일한 잉크 적용, 종이의 롤링 또는 스캐너 표면 상의 압력을 가하는 중의 일정하지 않은 압력, 및 오일 등의 외부 오염, 및 사람 피부의 습기 성분의 기후적 변동은 선명하게 촬상되지 않는 요철의 주요 원인 중 일부이다. 이 발명은 주어진 화상들로부터 유도될 수 있는 분할된 최소자승 필터들의 셋트 및 지상 검증 쌍(ground truth pairs)들을 오프라인 프로세스로서 학습하는 방법을 다루고 있다. 학습된 필터들은 입력 지문 화상들과 콘볼루션되어 강화된 화상을 얻는다.
Lachine; Vladimir U.S. 20060050083 에서는, 싱글-패스 디지털 화상 워핑에 있어서 확장된 타원형 또는 직사각형 지문에 대한 원대칭 이방성(circularly symmetric anisotropic) 필터링을 위한 방법 및 시스템을 개시하고 있다. 입력 화상 공간에서 출력 픽셀의 맵핑된 위치에서의 불균일 화상 스케일링 함수를 근사화하는 타원을 먼저 찾아 조절함으로써 필터링이 수행된다. 이러한 타원으로부터 출력 화상 공간의 단위 원으로의 선형 변환은, 지문 내의 입력 픽셀 반경들 및 해당하는 필터 계수를 반경의 함수로서 계산하도록 판정된다. 지문의 형태는 화상 품질과 처리 속도와의 사이의 상충(trade-off) 관계로서 판정된다. 일 실시예에 있어서, 평활화 및 워핑 성분들의 프로파일들이 조합되어 더 예리하거나 세부적인 강화된 출력 화상을 생성한다. 본 발명의 방법 및 시스템은 입력 화상의 예리함을 유지 또는 강화하면서도 뾰족한 인공잡음(jagging artifact)이 없는 자연스러운 출력 화상을 생성한다.
「MacInnis; Alexander G. U.S. 20040181564」에서는, 디코딩 파이프라인을 채용하는 디코딩 시스템에 있어서 데이터 유닛 관리의 시스템 및 방법을 개시하고 있다. 각각의 인입하는 데이터 유닛은 메모리 구성요소가 지정되어 지정된 메모리 구성요소에 저장된다. 각각의 디코딩 모듈은 데이터 유닛에 대한 자신의 디코딩 동작을 수행한 후에 새롭게 처리된 데이터를 동일함 메모리 구성요소에 되돌려 놓는다. 일 실시예에 있어서, 지정된 메모리 위치는 데이터 유닛에 대응하는 제어 데이터를 유지하기 위한 헤더부 및 데이터 유닛의 실질적인 데이터를 유지하기 위한 데이터부를 구비한다. 일단 헤더 정보가 지정된 메모리 구성요소의 헤더부에 기입되고, 필요한 만큼 디코딩 파이프라인을 통해서 다양한 디코딩 모듈들에 의해 액세스된다. 메모리의 데이터부는 다수의 디코딩 모듈들에 의해 사용/공유된다.
「Yu; Dahai; U.S. 7,120,286」에서는, 3차원 공간의 물체의 에지 윤곽을 확인하기 위한 방법 및 장치를 개시하고 있다. 이 방법 및 장치는 스캐닝된 물체의 정밀한 치수의 측정을 얻도록 설계되는 컴퓨터 비젼 시스템에서 활용된다. 자동 트레이싱 측정 중의 포커싱 타임을 절약하기 위하여, 다수의 화상들이 수집되고, XY 스테이지의 특정 위치의 다수의 Z 높이들에 대하여 저장된다. 이러한 저장된 화상들은 추후에 물리적인 Z 스테이지 이동을 필요로 하는 것이 아니라, 선택된 XY 면적의 각각의 에지 포인트 트라이얼 위치에 대한 포컬 포지션을 계산하기 위하여 사용될 수 있다. 또한, 특히, 윤곽의 Z 높이 변화가 점진적이며 예측가능한 물체에 있어서, 이전의 에지 포인트들의 Z 높이들에 기초한 Z 높이 외삽법은 검색 프로세스를 크게 가속화시킬 수 있다.
「Siegel; Erwin Frederick U.S. 20030123584」에서는, 분석기, 스레숄딩 회로, 및 합성기를 포함하는 필터를 개시하고 있다. 분석기는 입력 신호로부터 저주파 성분 신호 및 고주파 성분 신호를 생성한다. 스레숄딩 회로는 고주파 성분 신호로부터 처리된 고주파 신호를 생성하며, 처리된 고주파 신호는 고주파 성분 신호가 문턱치보다 작은 진폭을 갖는 면적들에 있어서 0의 진폭을 갖는다. 합성기는 저주파 성분 신호와 처리된 고주파 신호를 포함하는 입력 신호들로부터 필터링된 신호를 생성한다. 필터링된 신호는 문턱치가 0이라면 입력 신호와 동일하다. 분석기는 시간 상에서 입력 신호의 작은 분절 상에 동작하는 복수의 유한 임펄스 응답 필터로 구성되는 것이 바람직하다.
「Kawano; Tsutomu; U.S. 20030095698」에서는, X-선 촬영 피사체를 통과한 방사선 량에 각각 해당하는 방사선 화상 신호에 의해 형성되는 방사선 화상에 대한 피쳐 추출 방법으로서, 각각은 해당 피쳐값을 추출하기 위하여 해당 피쳐 추출 조건을 가지는 복수의 상이한 피쳐 추출 단계들; 복수의 상이한 피쳐 값들의 조합을 평가하는 피쳐 값 평가 단계; 및 피쳐 값 평가 단계에 의한 평가 결과에 기초하여 복수의 상이한 피쳐 추출 단계들 중에서 적어도 하나의 피쳐 추출 단계를 선택하고, 선택된 피쳐 추출 단계의 피쳐 추출 조건을 변경하고, 방사선 화상으로부터 변경된 피쳐 추출 조건에 기초하여 피쳐 값을 다시 추출하도록 선택된 피쳐 추출 단계를 수행하는 제어 단계를 포함하는 피쳐 추출 방법을 개시하고 있다.
「Naegle; U.S. 20030052886」에서는, 선형 급수로 결합되는 복수의 비디오 라우터들(VR(0), VR(1), ..., VR(NR -1)을 포함하는 비디오 라우팅(video routing) 시스템을 개시하고 있다. 선형 급수의 각각의 비디오 라우터는 디지털 비디오 스트림 상에서 연속적으로 동작할 수 있다. 각각의 비디오 라우터는 다음 비디오 라우터의 링크 인터페이스 버퍼가 동기 클록에 응답하여 출력 비디오 스트림으로부터 값들을 캡쳐할 수 있도록 그 출력 비디오 스트림과 함께 동기 클록을 제공한다. 비디오 라우터들 각각에 대하여 공통 클록 신호가 분산되어 있다. 각각의 비디오 라우터는 공통 클록 신호를 버퍼링하여, 출력 클록을 발생시킨다. 출력 클록은 대응하는 링크 인터페이스 버퍼 중에서 데이터를 판독하기 위한 판독 클록으로서 사용된다. 출력 클록은 또한 다운스트림으로 송신되는 동기 클록을 발생시키도록 사용된다.
「Matsuda; Hideki; U.S. 20030234785」에서는, 교정 시간을 을 줄일 수 있는 화상 처리 시스템을 제공하기 위하여, 이상적인 환경 측정 데이터를 저장하는 장치 프로파일 저장부; 센서를 통하여 측정되는 제1 및 제2 시야 환경 측정 데이터와의 차이에 기초하여 화상 투영부로부터의 출력광을 나타내는 출력광 데이터 및 주변광 데이터를 유도하는 분광부; 출력광 데이터 및 이상적인 환경 측정 데이터에 기초하여 투영면의 반사도를 추정하는 투영면 반사도 추정부; 반사도, 이상적인 환경 측정 데이터, 및 주변광 데이터에 기초하여 시야 환경 추정 데이터를 생성하는 센싱 데이터 생성부; 시야 환경 추정 데이터에 기초하여 LUT를 갱신하는 LUT 생성부; 및 갱신된 LUT에 기초하여 화상 정보를 정정하는 정정부를 포함하는 화상 처리 시스템을 개시하고 있다.
「Busse; Richard J. U.S. 7,205,520A」에서는, 상용 공항 또는 비행장 근처의 상용 항공기에 타겟팅하는 위협 미사일 발사를 검출하기 위한 전기광학 센서의 센서 그리드로 이루어지는 그라운드 기반의 발사 검출 시스템을 개시하고 있다. 전기광학적 센서들은 중첩하는 시야각들을 갖는 이웃하는 센서들에 위협 라인들을 브로드캐스트하는 무선 네트워크에서 구성된다. 위협 미사일이 확인되는 경우, 위협 데이터가 중심에 위치한 처리 시설에 보내져, 근처의 어느 항공기가 타겟인지 판정하여, 항공기에 대하여 처분 대응 신호를 보낸다.
「Nefian; Ara V. U.S. 20040071338」에서는, 식별 대상의 인공 화상으로부터 관측 벡터들의 어레이를 산출하는 인공 인식 및 보안 식별에 유용한 화상 처리 시스템을 개시하고 있다. 각각의 대상에 대한 계층적 통계 모델의 주어진 파라미터들에 있어서 관측 벡터들에 대하여 비터비(Viterbi) 알고리즘이 적용되고, 관측 시퀀스와 계층적 통계 모델과의 사이에 최고의 매칭을 찾음으로써 페이스가 식별된다.
「MacInnis; Alexander G. U.S. 200301877824」에서는, 디코딩 파이프라인을 채용하는 디코딩 시스템에서의 데이터 유닛 관리를 위한 시스템 및 방법을 개시하고 있다. 각각의 인입하는 데이터 유닛은 메모리 구성요소가 지정되어, 지정된 메모리 관리요소에 저장된다. 각각의 디코딩 모듈은, 지정된 메모리 구성요소로부터의 주어진 데이터 유닛에 대하여, 제어 데이터뿐만 아니라 동작 대상의 데이터를 취득한다. 각각의 디코딩 모듈은 데이터 유닛 상의 디코딩 동작들을 수행한 후에 새롭게 처리된 데이터를 동일한 메모리 구성요소에 되돌려 축적한다. 일 실시예에 있어서, 지정된 메몰 위치들은 데이터 유닛에 대응하는 제어 데이터를 유지하는 헤더부 및 데이터 유닛의 실질적인 데이터를 유지하는 데이터부를 포함한다. 헤더 정보는 지정된 메모리 구성요소의 헤더부에 일단 기입되고, 필요에 따라 디코딩 파이프라인을 통해서 다양한 디코딩 모듈에 의해 액세스된다. 메모리의 데이터부는 다수의 디코딩 모듈들에 의해 사용/공유된다.
비디오 카메라 또는 센서들로부터의 입력 신호들을 실시간으로 수치 데이터로 변환하여 시간 레이턴시를 최소화하는 하드웨어 및 소프트웨어로 구성되는 장치를 개시한다. 유도된 데이터는 6의 자유도에서 움직이는 물체들의 방향 및 회전 파라미터들로서 객체에 대한 식별을 제공한다.
본 장치는 비디오 카메라 또는 센서들로부터의 입력 신호들을 수치 데이터로 실시간으로 변환하여, 동적인 움직이는 물체들을 3D 공간에서 검출, 식별, 및 트랙킹하기 위한 것이다. 데이터는 또한 각각의 타겟의 3D 위치 좌표를 제공하고, 각각의 개별 타겟의 3D 모션 벡터들을 트랙킹한다. 하드웨어 및 소프트웨어 아키텍처는 6의 자유도에서 움직이는 다수의 타겟들의 이동의 검출, 트랙킹, 및 리포팅 사이의 시간 레이턴시를 제거하고자 하는 것이다.
본 장치는, 아날로그-디지털(A/D) 변환기의 최하위 비트의 해상도로, 전자기파의 개별적인 프라임 컬러들을 식별하는 효율적인 비디오 필터링 하드웨어를 활용한다. 필터는 또한 배경 컬러들을 포함하는 불요의 컬러들을 필터링하고, 이들을 임의의 소망하는 컬러로 교환하는 능력을 갖는다.
본 발명과 다른 디지털 화상 처리 시스템들과의 주요한 차이점은, 전자식으로 비디오 스펙트럼 픽셀 컬러들을 제거하는 능력에 있다. 스펙트럼 컬러 필터링의 해상도 또는 구별 및 필터링되어야 하는 개별 컬러들의 수는 D의 3승으로서, 여기서, D는 사용되는 아날로그-디지털 변환기 내의 비트 수이다. 예를 들어, 10 비트 A/D 변환기에 있어서, 컬러 스펙트럼 내에서 (1000*1000*1000)= 100만 개의 개별 컬러들을 구별한다. 이는 디지털 화상 처리에 있어 매우 강력한 도구이다. 이는 거의 모든 화상 프로세서 하드웨어 또는 소프트웨어에서 사용되는 퓨리어 변환에서 소모되는 시간에 대한 필요성을 일소한다. 프라임 컬러 픽셀들 각각에 대한 검출 시간은 전자 메모리의 출력 지연 또는 액세스 시간이며, 이는 주로 수십 나노초의 단위이다.
본 발명의 또 다른 주요 장점은 계산상 격렬한 퓨리어 변환을 필요로 하지 않는다는 것이다.
본 발명의 다른 디지털 화상 처리 시스템들과의 또 다른 주요 차이점은 그 컴퓨터 아키텍처에 있다. 아키텍처는 다수의 이동하는 타겟들의 검출 시간을 실시간의 쌍방향 시나리오에 있어서 최소화하고자 하는 것이다. 아키텍처는 2개의 프로세서 사이에 있어서 선입선출(FIFO) 메모리와 연계하여 프로세서들이 동작하게 되는 어셈블리 라인 프로세서(자동차 제조 어셈블리 라인과 유사함)와 유사하게 동작하는 분산형 처리라는 것이다. 실시간 모션 검출의 엄격한 레이턴시 시간 요구사항을 충족하기 위하여, 본 장치에서는, 통상적인 어셈블리 라인 동작들과 유사한 특수한 분산형 컴퓨터 하드웨어를 활용한다. FIFO들은 하나의 프로세서에서 다른 프로세서로 반처리된 데이터를 전달하기 위하여 사용된다. FIFO들은 또한 물체들의 식별이 더욱 쉽게 이루어지는 고유한 방식으로 사용된다. 간단한 상태 머신 하드웨어 구현이 시간을 절약하도록 각각의 개별 프로세서의 동작은 충분히 간단하게 이루어진다. 처리 라인 내에서의 프로세서의 개별 태스크는 대부분의 컴퓨터 아키텍처에서 공통적인 처리 병목현상을 제거하는 수단을 제공하는 것이다.
본 발명의 또 다른 특징은, 이동하는 물체의 회전 벡터 파라미터들뿐만 아니라 X, Y, Z 거리를 측정하는 능력에 있다. 본 발명의 또 다른 특징은, 거리 측정뿐만 아니라 이동하는 물체의 회전 파라미터들을 측정하는 능력에 있다. 본 발명의 또 다른 장점은 다양한 화상 처리 태스크들에 대한 메모리의 사용과, 복잡한 소프트웨어 프로그램들을 방지하는 것에 있다.
본 발명의 또 다른 장점은, 자동차 제조 에셈블리 라인과 유사한 고유한 분산형 컴퓨터 아키텍처의 사용에 있으며, 여기서, 각각의 컴퓨터는 FIFO로부터 반처리된 데이터를 수신하여, 반처리된 데이터를 라인의 다음 FIFO에 기입함으로써 간단한 화상 처리 태스크들을 수행한다. 본 발명의 다른 장점들은 상세한 설명에서 명백하게 될 것이다.
도 1은 컬러 필터 및 식별자의 블록도이다. 이는 카메라 또는 센서로부터 비디오 아날로그 신호들을 수신한다. 이는 컬러들이 필터링 및 식별되는 2개의 스테이지를 나타낸다. 제1 단은 프라임 컬러들의 식별에 대한 것이며, 제2 단은 컬러 스펙트럼 내의 컬러들의 식별에 대한 것이다. 수치가 프라임 컬러들과 스펙트럼 컬러들을 식별한다. 블록도에서 볼 수 있듯이, 출력은 스펙트럼 컬러 번호들과 스펙트럼 컬러 그룹 번호들이다.
도 2는 비디오 동기화 및 제어 논리 블록도이다.
도 2A는 물체를 서로 구별하도록 갭이 검출되는 하드웨어 방법이다.
도 3은 실시간 분산형 프로세서(어셈블리 라인 프로세서)의 블록도이다. 실시간 분산형 프로세서는 도 1의 블록도의 식별정보와 컬러 필터로부터 비디오 데이터 정보를 수신한다. 실시간 분산형 프로세서는 물체 식별정보 및 이동하는 물체의 거리 및 회전 모션의 모션 트랙킹 데이터를 제공한다.
도 4는 다색채화된 입방체의 도면으로서, X 및 Y 좌표의 중간점이 도시되어 있다.
도 4A는 도 4의 다색채화된 입방체의 도면으로서, z 축에서의 그 이동과, X 및 Y 좌표로 나타낸 각 컬러의 영역이 도시되어 있다.
도 5는 다색채화된 반구(half globe)의 도면으로서, X 및 Y 좌표의 중간점들이 도시되어 있다.
도 6은 도 2에 나타낸 분산형 프로세서의 픽셀 그룹 식별 프로세서 파트 중 하나의 흐름도이다. 픽셀 그룹 식별자 프로세서 함수는, 다음 단계 프로세서에 필요한 물체들의 기준 x 중간점 좌표, 중간점 x 및 y 좌표 프로세서를 제공하기 위한 것이다.
도 6A는 도 6에 의해 생성되는 중간점 x 기준 데이터의 표현이다. 본 표현은 도 6- 중간점 기준 동작들의 이해를 위한 것이다. 이 도면은 행 내의 물체들의 그룹의 식별된 픽셀들 및 갭의 정의를 나타낸다.
도 7은 x(행) 및 y(열) 프로세서 흐름도이다. 그 주요 기능은 X 및 Y 좌표 기준에 기초하여 물체들의 기준 중간점 좌표를 분류하는 것이다.
도 7A는 2개의 연속적인 프레임들에 대한 중간점 x 및 y(열) 좌표 프로세서에 대한 입력을 나타낸다.
도 7B는 2개의 연속적인 프레임들에 대한 중간점 x 및 y(열) 좌표 프로세서의 출력을 나타낸다.
도 7C는 이전 프레임에서 물체가 삭제되고, 이전 프레임과의 비교시 또 다른 물체가 추가되는 중간점 x 및 y(열) 좌표 프로세서의 세부 동작을 나타낸다.
도 8은 화면 상의 출현과 소멸에 기초하여 물체를 식별하는 물체 식별 프로세서 흐름도이다.
도 8A는 2개의 연속적인 프레임들에 대한 물체 식별 프로세서에 대한 입력이다.
도 9는 이동하는 물체들의 회전 파라미터뿐만 아니라 거리를 제공하는 모션 벡터 측정 하드웨어의 블록도이다.
당업자라면, 본 발명의 개념과 범주로부터 일탈하지 않고서, 본 명세서에 기재되어 있는 바에 대한 변경 및 개조가 가능할 수 있다. 그러므로, 도시된 바는 예시만을 목적으로 명기된 것으로서, 본 장치와 방법의 사용의 측면에서 한정하고자 한 것이 아니라는 것을 이해할 수 있을 것이다.
상기 도면들은 설명된 장치 및 바람직한 최적 모드의 실시예 중 적어도 하나에 있어서 사용을 위한 방법을 나타낸 것으로서, 이하의 상세한 설명에 더 자세하게 설명되어 있다.
비디오 카메라 또는 센서들로부터의 입력 신호들을 다수의 이동하는 타겟들의 모션 특징을 나타내는 수치 데이터로 최소의 레이턴시를 가지고 변환하는 하드웨어 및 소프트웨어로 구성되는 장치를 설명한다. 데이터는 6의 자유도에서 물체들의 식별, 움직이는 물체의 회전 파라미터들뿐만 아니라 거리(X, Y, Z)를 제공한다. 장치는 전자기파들의 각각의 개별 프라임 컬러들을 식별하는 효율적인 비디오 필터링 기법 및 3자승의 적절한 A/D 변환기의 해상도를 갖는 컬러 스펙트럼을 포함한다. 필터는 배경 컬러들을 포함하는 불요의 컬러들을 필터링하고, 임의의 소망하는 컬러를 송신을 위하여 대체하는 능력을 갖는다. 실시간 모션 검출의 엄격한 레이턴시 시간 요구사항을 충족하기 위하여, 장치는 통상적인 어셈블리 라인 동작들과 유사한 특수한 분산형 처리 컴퓨터 하드웨어를 포함한다. FIFO들은 프로세서 서로 간에 반처리된 데이터를 전달하기 위하여 사용된다. FIFO들은 또한 물체들의 식별이 더 쉽게 이루어지는 고유한 방식으로 사용된다. 상태 머신 컨트롤러/프로세서 하드웨어 구현이 통상적인 CPU를 대체하도록 각각의 개별 프로세서의 동작이 충분히 간단하게 이루어진다. FIFO의 사용과 연계한 개별 프로세서의 태스크들은 분산형 프로세서 컴퓨터 아키텍처들의 대부분에서 공통적인 병목 현상을 일소하기 위한 수단을 제공한다.
프라임 컬러 필터링 및 식별 (도 1)
이하, 도 1의 블록도를 참조하면, 카메라 또는 CCD로부터의 아날로그 비디오 데이터가 디지털로 변환되는 포인트 2(블록 2)가 있다. 포인트 7에서, 인입하는 비디오 신호와 동기화하기 위하여 공지의 비디오 데이터 포맷이 사용된다. 동기화시에, 프라임 컬러(14)의 신호들 및 픽셀 시간(17) 내의 그 관련 타이밍이 생성된다. 프라임 컬러 데이터 강도들을 적절한 유지 및 절단 레지스터(3)들에 클록킹하기 위하여 프라임 컬러 타이밍 및 컬러 식별이 사용된다.
포인트 4, 5, 및 6에서, 디지털 프라임 컬러 강도들이 적절한 프라임 컬러 메모리에 대한 어드레스로서 설정된다. 메모리는 각각의 프라임 컬러에 대한 프라임 컬러 필터링 및 대역폭 정보를 포함하며, 이는 CPU에 의해 미리 기록되어 있다. 미리 기록되어 있는 메모리의 데이터는 프라임 컬러 번호 및 프라임 컬러의 그룹 번호를 식별하도록 구성되어 있다.
프라임 컬러 번호의 식별과 함께, 메모리의 미리 기록된 데이터는 또한 임의의 다른 프라임 컬러들의 특정 그룹을 식별한다. 그룹핑은 1 내지 m까지 일 수 있으며, 여기서, m은 상이한 물체들의 컬러들의 그룹들의 총수이다.
식별 데이터 및 그룹핑과 함께, 메모리는 그 프라임 컬러가 다른 프라임 컬러와 교환되어야 하는지 여부를 나타내게 되며, 검출된 강도로 교환되어야 하는 소망의 강도를 제공한다. 따라서, 메모리의 내용은 다음과 같은 미리 기록된 정보를 포함할 수 있다:
. 식별
. 프라임 컬러 번호,
. 그룹 번호,
. 교체
. 컬러 강도의 교체
스펙트럼 컬러 필터링 및 식별 (도 1)
도 1을 다시 참조하면, 컬러 스펙트럼 내의 컬러 번호들을 식별하기 위하여 모든 프라임 컬러들의 프라임 컬러 번호(10)들 및 그들의 관련 그룹 번호(11)들이 컬러 스펙트럼 메모리에 설정된다.
각각의 픽셀 시간 주기 중에, 3개의 프라임 컬러 메모리 모두로부터의 프라임 컬러 번호들은 컬러 스펙트럼 메모리에 대한 어드레스로서 설정되며, 여기서, 메모리의 데이터는 식별, 선택된 컬러 번호, 선택된 컬러 그룹, 필터의 중심, 각 컬러의 대역폭, 컬러 스펙트럼에서 컬러들의 그룹 내의 컬러의 중심보다 큰지, 작은지, 또는 동일한지 여부를 나타낸다. 컬러가 필터링되어야 하는 어드레스의 위치들의 수는 컬러의 대역폭과 그 그룹 식별을 결정한다.
컬러 스펙트럼 메모리 필터는 또한 송신되어야 하는 또 다른 컬러를 갖는 임의의 인입하는 컬러의 대체를 포함한다.
픽셀 타이밍을 더함으로써, 설계의 디지털 구현에 필요한 모든 디지털 제어 정보가 도입된다. 이는 비디오 출력 흐름 제어 등의 설계의 나머지에 대한 다른 모든 디지털 논리를 제어하기 위하여 사용되게 된다.
메모리의 데이터로부터 "0" 또는 "1"을 판독함으로써 식별이 이루어진다. "0"는 프라임 컬러가 식별되지 않음을 나타내며, "1"은 프라임 컬러 강도가 식별된 것을 나타낸다. 메모리는 또한 특정 프라임 컬러 강도와 관련된 미리 기록된 수를 포함한다. 식별된 프라임 컬러 포인트(10)는 1 내지 n까지 넘버링되며, 여기서, n은 필터링되는 프라임 컬러의 총수이다.
비디오 동기화 및 제어 논리 (도 2)
도 2는 도 1 내의 블록 7의 확장이다. 블록 7의 확장은 필터 장치(20)에 대하여 픽셀 프라임 컬러 할당 타이밍을 제공하고 기타의 논리 제어를 제공하기 위하여 프레임 기준 ROM(65)에 입력되는, 비디오 프레임 헤더 검출(61), 프레임의 행 및 열 카운터(62), 서브 픽셀 타이밍 카운터(63)를 포함한다.
분산형 어셈블리 라인 프로세서 (도 3)
도 3은 시간이 중요한 디지털 화상 처리를 위한 분산형 프로세서의 아키텍처 블록도이다. 이러한 분산형 프로세서의 아키텍처는 통상적인 어셈블리 라인과 유사하므로, 분산형 어셈블리 라인 프로세서라 한다.
어셈블리 라인 처리에서의 이러한 프로세서의 목적은, 라인 상의 다음 프로세서에 대하여 데이터를 부분적으로 처리하고 중복 데이터를 소거하는 것이다. 하나의 프로세서의 동작은 이전 프로세서에 의존한다. 각각의 프로세서는 이전 단의 FIFO의 적절한 데이터를 판독하고, 또 다른 처리에 있어서, 적절한 데이터를 라인 상의 다음 FIFO에 기입한다. 프로세스는 이하로 요약된다:
ㆍ 프로세스가 연속적인 순서로 연이어 발생한다, 여기서, 처리 태스크들은 시간에 의존하며 기능 의존성인 복수의 간단한 태스크들로 분할된다.
ㆍ 각각의 FIFO의, 프리-프로세서(들)은 반처리된 데이터를 제1 스테이지 FIFO에 처리 및 로딩한다.
ㆍ 각 FIFO의 포스트-프로세서는 그 FIFO로부터 반처리된 데이터를 판독하고, 또 다른 처리 후에, 이를 다음 스테이지의 FIFO에 기입한다.
도 3의 블록도를 참조하면, 포인트 20에 있어서, 픽셀 프로세서는 컬러 스펙트럼 필터 및 비디오 데이터 FIFO(A)과 비디오 데이터 FIFO(B) 양측과 인터페이스한다. 필터링 및 식별된 픽셀들은 스펙트럼 필터 메모리로부터 판독된 후에 FIFO들 중 하나에 로딩된다.
픽셀 프로세서는 또한 적절한 프레임 타이밍을 판독하여 이를 비디오 데이터 FIFO들에 기입하기 위하여 비디오 동기화 및 제어 논리와 인터페이스한다. 픽셀 프로세서는 또한 갭 검출기 하드웨어로부터의 갭 신호를 수신하여 갭 마크를 정정하고 행 내의 컬러화된 픽셀들의 그룹의 검출의 종료를 알리기 위하여 갭 신호(도 2A)와 인터페이스된다.
어셈블리 라인 프로세서의 개별 프로세서들은 그들의 컬러와 그룹 식별에 기초하여 픽셀들을 처리한 후, 발견되었던 그들의 x 및 y 프레임 위치 좌표에 기초하여 컬러들과 물체들의 처리 및 식별을 시작하게 된다. 각 픽셀의 좌표의 순서는 제1 열과 제2 행에 의해 특징화된다.
각각의 프로세서 및 FIFO의 태스크들 및 기능들의 정의는 이하의 부문에서 더 명확하게 될 것이다.
FIFO들의 활용은 각각의 프로세서에 대하여 2개의 어드레스에만 데이터를 판독 및 기입하여, 데이터 판독과 데이터 기입에 대한 포인터들의 갱신에 있어서 시간을 절약하는 장점을 제공한다.
각각의 프로세서의 기능들은 최소로 유지되므로, 인스트럭션 셋트를 완료하기 위하여 많은 클록들을 취하는 메모리 기반의 CPU들과 비교하여, 메모리 기반의 상태 머신 논리는 하나의 클록 주기 시간 내에의 동작 모드들을 변경시킨다.
갭 검출 (도 2A)
본 발명에 있어서, 행의 컬러(들)의 연속적인 검출되지 않은 픽셀들이 "n"개 있으며, 컬러화된 물체들 사이에 있어서 (동일한 컬러(들)) 검출되지 않은 연속적인 컬럼들이 "m"개 있다면, 다른 물체로부터 분리되어 있다고 간주된다. 본 출원서에 있어서, 이를 분리(separation)라고 하며, 갭(gap)이라고 한다. 갭은 동일한 행 내의 또 다른 지정된 컬러 픽셀 또는 동일한 컬러 픽셀로부터 행과 열들에 있어서 지정된 컬러 픽셀이 없는 것이다. 검출시에, 컬러들의 그룹에 속하는 하나의 컬러와 컬러들의 상이한 그룹의 또 다른 컬러와의 사이에 갭이 없다면, 2개의 물체의 분리 및 식별이 선언된다.
ㆍ 3차원 공간에서 이동하는 물체의 2차원 검출은, 주어진 프레임 속도에 대하여 처음 검출되는 동일한 위치 근처인 것으로 가정된다;
도 2A를 다시 참조하면, "n"의 쉬프트 레지스터가 로딩되며, 이는 스펙트럼 컬러 메모리로부터 신호의 식별이 수신되는 때마다 쉬프트 레지스트를 로딩한다. 연속적으로 검출되는 픽셀들이 행에 존재하는 한, 갭 검출 신호는 로우(low)로 유지되지만, "n"개의 검출되지 않은 신호가 도달되는 때에는, 이 신호가 하이(High)로 되어, 2개 물체의 분리를 나타낸다.
3차원 공간에서 이동하는 물체(도 4, 4A, 및 5)의 모션 특징들
3차원 공간에서 이동하는 물체의 x 및 y 중간점 위치는, 그것의 2차원 촛점면 중간점 "x"(행) 및 카메라의 센서들에 의해 촬상되는 그 "y"(열)이다. 다색채 장치의 중간점 X 좌표는, 임의의 행에서 검출되는 그 컬러들 중 임의의 하나의 가장 작은 픽셀 x 좌표(도 4A의 포인트 202) 및 가장 큰 픽셀 x 좌표와의 사이(도 4A의 포인트 203)의 중간점이다. 다색채 물체의 중간점 Y 좌표들은, 그것의 컬러들 중 임의의 하나가 검출되는 첫번째 행에서부터 최종 행까지의 사이에 있어서, 중간점 행이다(도 4A의 포인트 204 및 205).
이하, 도 4의 도면을 참조하면, 다색채화된 입방체의 대략적인 중간점 좌표는 2개의 라인(200 및 201)이 각각의 다른 포인트(209)를 교차하는 포인트라는 것을 알 수 있다.
도 4A는 도 4의 또 다른 도면으로서, 여기서, 도 4와 비교하여 각도뿐만 아니라 거리가 프레임별로 변화된다. 포인트(202)는 최대 x (물체가 검출되는 가장 작은 x 좌표 픽셀)이며, 포인트(203)은 최대 x 좌표이다. 포인트(204)는 입방체가 검출되었던(최소 y) 첫번째 행이며, 포인트(205)는 물체들의 검출이 종료된다(최대 y).
도 5는 반구의 도면으로서, 여기서, 중간점 좌표가 식별된다. 포인트(210, 211, 213, 및 214)들은 X 및 Y 평면에서 각각의 컬러가 검출되는 면적이다. 이 컬러 아래의 면적은 그 컬러의 총 픽셀 카운트이다. 포인트(210, 211, 213, 및 214)들은 하나의 특정 프레임에서 검출되는 동일한 컬러화된 픽셀들을 카운팅함으로써 유도된다.
필터 프로세서
컬러 스펙트럼 필터에 결합되는 필터 프로세서는, 그 픽셀 타이밍 중에 픽셀 컬러의 검출을 지칭하기 위하여 스펙트럼 컬러 필터(적절한 픽셀 타이밍에서)의 출력에서 "픽셀 검출 마크"가 나타나는 때마다, 컬러 스펙트럼 메모리로부터 픽셀 정보를 판독하고, 비디오 데이터 FIFO에 대하여 이하의 것을 제공한다:
a) 필터링된 컬러 픽셀 데이터
ㆍ 다색채화된 물체의 스펙트럼 식별 번호
ㆍ 물체에 속하는 (컬러들의) 그룹 번호
b) 그들이 발견되었던 행과 열 내의 픽셀 위치 번호에 대한 픽셀 좌표
c) 갭이 검출되는 픽셀
픽셀 그룹 식별자 프로세서 (도 6)
픽셀 그룹 식별자 프로세서는 비디오 데이터 FIFO로부터 필터링된 컬러 픽셀들 및 관련된 그룹 번호를 수신한다.
도 6은 픽셀 그룹 식별자 프로세서의 흐름도 동작들을 나타낸다. 그 작업 기능은 컬러, 및 행 내의 물체에 속하는 컬러들의 그룹들을 식별하기 위한 것이다. 그 후, 이는 이들이 프레임의 행에서 발견되었던 컬러들의 그룹의 중간점 기준 위치를 제공한다. 도 6A는 픽셀 그룹 식별자 프로세서에 대한 입력의 더 구체적인 표현을 제공한다.
이 기준 중간점 x는 동일한 컬러를 가지며 컬러들의 그룹에 속하는 행 내의 컬러 픽셀들의 그룹의 위치 식별만을 위한 것이다. 실제의 중간점 x 식별은 처리의 다음 단에서 발생한다.
도 6A와 연계하여, 이하, 도 6의 논리 흐름도에서 수치 논리 번호들을 참조하면, 다음을 알 수 있다:
포인트(100)에서, 도 1의 컬러 필터 및 식별 출력은 비디오 데이터 FIFO에 저장되며, 픽셀 그룹 식별자 프로세서에 대한 입력이다.
포인트(102)에서, 새롭게 식별된 픽셀을 수신한다(이는 물체의 컬러의 첫번째 검출이며, 갭 다음의 새로운 행 또는 새로운 물체로부터 시작한다).
포인트(103)에서, 픽셀들의 그룹의 제1 기준 중간점 x 좌표, 그 컬러, 및 컬러 그룹 번호를 유지한다. 다음 픽셀과의 비교의 기초로서 컬러 정보 및 중간점 x (행) 기준 위치를 사용한다.
포인트(104)에서, 컬러 번호 및 그룹 번호뿐만 아니라 새로운 픽셀 기준을 다시 판독하도록 이행한다.
포인트(105)에서, 컬러 및 그룹 번호가 포인트(103)과 동일한지 검사한다.
주의:
다색채화된 물체의 픽셀들은 프레임에서 연속적이므로, 컬러들의 그룹에 관련되는 컬러들만이 갭 이전에 검출되어야 한다.
포인트(106)에서, 새로운 픽셀이 이전에 식별된 컬러(포인트 103)와 동일하다면, 동일한 그룹의 컬러에 속하는 (행 내의) 검출된 픽셀들의 수를 가산한다.
물체의 각각의 컬러 아래 면적은 회전 벡터들을 검출하기 위하여 필요하다. 물체의 모든 컬러 아래의 전체 면적은 검출기에 대한 근접도를 나타낸다. 이는 이하의 모션 벡터 측정 메모리에서 설명된다.
포인트(106)에서, 알고리즘은 또한 (행의 그룹 내의 임의의 컬러 중) 가장 작은 x 좌표와 가장 큰 x 좌표를 검사하여 유지한다. 이 측정은 추후에 이어지는 열들에서 물체의 중간점 좌표를 찾기 위하여 사용된다.
포인트(107)에서, 검출된 컬러가 물체에 관련되는 컬러들의 그룹에 속하는 것을 확인하기 위하여 검사한다. 이는 도 1의 컬러들의 필터 그룹 검사 및 식별에 더한 이중 검사이다. 동일한 그룹의 컬러라면, 포인트 (104)에 복귀하여 다음 픽셀과 그룹의 컬러 번호를 취한다.
상이한 컬러들의 그룹이 검출되는 때에 포인트(108)에 도달한다. 이하의 것들을 행한다:
■ 그룹 내의 모든 컬러들의 총 픽셀 카운트를 가산한다.
■ 행 내의 컬러들의 그룹 중 가장 작은 x 좌표와 가장 큰 x 좌표를 유지한다.
■ 행 번호를 유지한다.
■ 다음 단의 FIFO에 대하여 상기 정보를 보낸다.
물체의 말단이 검출되는 때에(도 3), 갭 신호 마크가 이전에 검출된 픽셀들에 대하여 수정되어, 이 프로세서에 대하여 컬러들의 그룹에 관련되는 임의의 컬러의 검출에서 인터럽트 시에 갭이 검출되었다는 것을 알린다.
주의:
새로운 검출된 픽셀 컬러가 상이하다면(동일한 그룹에 속하지 않는다면), 상이한 그룹의 컬러들 중의 컬러가 검출된 것으로 가정한다(이것은 상이한 물체의 검출과 동일하다).
포인트(109)에서, 도 3에 의해 수정되었던 갭 태그에 대하여 검사한다. 갭이 존재하면, 올바른 스페이싱인 것으로 가정하며, 갭이 발견되지 않으면, 에러 신호를 제공한다.
포인트(111)에서, 프레임 내의 최종 컬러에 대하여 검사한다. 그렇다면, 다음 단의 이전 FIFO와 새로운 FIFO의 순서를 변경한다 (A 에서 B 또는 B에서 A).
이 프로세스는 행 내의 가장 작은 X 좌표와 가장 큰 X 좌표 사이의 데이터량(the amount of date)를 소거한다.
이하, 픽셀 그룹핑을 참조하면, 물체가 CCD 카메라 상에 나타나는 방식으로 픽셀 그룹 식별자 프로세서에 대하여 입력된다. 도면에 나타나는 물체 번호는, 다음 논리도에서만 미래의 데이터 처리의 참조와 이해를 위한 것이다. 이 점에서, 프로세서는 물체의 출현과 소멸에 대하여 아무것도 알지 못한다. 분산형 프로세서의 물체 식별 프로세서 부분이 물체 식별을 수행한다.
도 6A는 CCD 상에 나타나는 컬러들의 그룹의 개념과, 2개의 물체 사이의 갭의 개념을 나타낸다.
픽셀 그룹 프로세서가 FIFO로부터 데이터를 판독하는 방법은, 임의의 행에서 행의 말단까지 그리고 다음 행으로부터 픽셀이 검출되는 방식이다.
픽셀 그룹 식별자 프로세서의 출력이, 연속하는 프레임들에 대하여 도 7A에 도시되어 있다.
중간점 X 및 Y 좌표 프로세서 (도 7)
X(행) 및 Y(열) 좌표 프로세서는 그룹 식별자 FIFO로부터 기준 중간점 좌표를 판독하여, 이들을 그들의 상대 위치 좌표들과 관련하여 분류한다.
이 프로세스 중에, 이들이 동일한 그룹의 컬러들과 관련되는지 확인하기 위하여 각각의 중간점의 상대 위치에 대하여 검사한다.
이하, 도 7A, 도 7B, 및 도 7C와 연계하여, 도 7의 논리 흐름도에서 수치 논리 번호들을 참조한다.
포인트(131)에서, 제1 중간점 엔트리를 탐색하고, 제1 좌표 판독에 가깝게 관련되는 다른 엔트리들을 계속 검사하도록 한다.
포인트(132)에서, 다음 엔트리를 판독하여, 제1 엔트리와 그 위치를 검사하기 위하여, 제2 판독의 검색 범위를 n개의 +/- 픽셀분 확장시킨다.
포인트 133에서는, 가장 낮은 확장된 수로부터 시작하여 포인트 131에서 수신한 제1 엔트리에 대하여 이를 검사한다. 중간점들이 +/- n개의 픽셀 위치 내에서 서로 근접하고, "m"개의 열들 내에서 서로 근접하다면(포인트 134), 포인트 135에 이행한다.
포인트 135에서, 2개의 엔트리에 대한 매칭이 존재하고, 이들이 "m" 개의 열들 내에 있다면, 열의 수에 대하여 가산하여, 가장 낮은 중간점 X 좌표 및 가장 높은 중간점 X 좌표를 유지한다.
수신된 중간점 기준 좌표의 순서는, 픽셀 식별자 프로세서가 기준 중간점을 탐색하여 제1 행에서부터 시작하여 말단 행까지 이행하며, 이를 다시 나머지 행들에 대하여 반복하기 때문에, 동일한 프레임 내의 물체와 데이터 사이에는 상호상관이 존재한다. 절제를 위하여, 각각의 중간점 x의 그룹에 대하여 번호가 할당된다. 번호들은 도 4, 도 4A, 및 도 5의 x 중간점들의 첫번째 그룹과 최종 그룹에 기초한다.
포인트(135)에서, 기준 x 좌표가 "m"개의 열만큼 분리되어 있다면, 동일한 중간점 기준 x 좌표를 갖는 새로운 물체인 것으로 간주하여, 포인트 (132)에 천이하여 다음 엔트리를 탐색한다.
포인트(136)에서, 목록의 말단을 검사하여, 말단인 경우, 다음 FIFO의 순서를 변경하고, 다음 프레임의 시작을 위하여 포인트(130)에 복귀한다.
포인트(138)에서, +/- n의 범위의 말단에서, 2개의 중간점 기준 x 좌표 판독 사이에서 일치하는 것이 없다면, 제2 판독이 상이한 물체에 속하는 것을 나타내며, 포인트(139)에 천이한다.
포인트(139)에서, 중간점 좌표 x 식별이 종료한 것으로 가정한다. 그 후, 물체의 실제 중간점 X 좌표 및 중간점 Y 좌표를 계산하고, 그 결과를 다음 단의 FIFO에 보낸다. 또한, 제2 판독을 제1 판독으로 마킹하고, 포인트 (132)에 천이하여, 제2 물체의 일치를 탐색한다.
X 및 Y 좌표 프로세서가 컬러들의 그룹(물체)에 속하는 행들 사이에서 데이터 량을 감소시킨다.
도 7A는 2개의 프레임들에 대한 다음 행(다음 열)에 선행하는 행 내의 픽셀 그룹핑을 나타낸다. 이는 X 및 Y 좌표 프로세서에 입력되는 물체의 새로운 출현과 소멸을 나타낸다. 도 7B는 각각의 물체가, 좌표의 프레임 기준 내에서 물체의 중간점 x 및 중간점 y인, 포인트에 의해 표현되는 X 및 Y 좌표 프로세서에 의한 처리의 결과의 표현이다.
물체 식별 프로세서 (도 8)
물체 식별 프로세서는 X 및 Y 좌표 FIFO로부터 X 및 Y 중간점 좌표 정보를 판독한다. 새로운 FIFO(새로운 프레임)로부터의 좌표를 이전 FIFO(구 프레임)에 본질적으로 비교하여, 새로운 프레임의 새로운 좌표가 이전 프레임과 동일한지, 더 작은지, 더 큰지 여부에 대하여 결정한다. 요약하면, 이하의 동작들이 본 프로세서와 관련된다:
물체 식별 프로세서의 동작들은 FIFO 방식의 동작을 이용함으로써 용이하게 된다. 요약하면, 본 프로세서의 동작은 이하와 같이 요약된다:
ㆍ 이전 (A 또는 B) FIFO로부터 이전 중간점 x 및 y를 판독한다.
ㆍ 새로운 (B 또는 A) FIFO로부터 새로운 중간점 x 및 y를 판독한다.
ㆍ 행 좌표에 대한 "m"의 한계치 및 x 좌표에 대한 "n"의 한계치를 제공한다.
ㆍ 이전의 좌표와 새로운 좌표를 비교하여, 물체를 식별한다.
ㆍ 관련 픽셀 번호들과 함께 모션 트랙 프로세서에 대하여 상기 결과를 기입한다.
2개의 프레임 간에 비교가 이루어지므로, 제3 FIFO가 회로에 추가되어, 이전의 데이터와 새로운 데이터의 혼합을 방지한다.
이하, 도 8의 논리 흐름도에서 수치 논리 번호들을 참조하면, 포인트(150)에서, 프로세서는 이전 프로세스에서 발현된 새로운 Y 좌표에서 시작하여, 새로운 행 좌표의 검색 범위를 +/- m 만큼 확장한 후, 행들의 비교를 시작한다. 검색 범위 +/- m은 하나의 프레임에서 또 다른 프레임까지 작은 모션 변화가 산정되는 것을 보장한다.
포인트(152)에서, 비교가 이루어지지 않으면, 1만큼 검색 범위를 증가시키게 되며, 포인트 154에 천이하여, y 좌표 검색 범위의 말단이 아닌 경우, 포인트 152에 복귀한다.
포인트 152에서 일치가 존재하면, 포인트 155에 천이하여, +/- n 카운트 내에서 x 좌표의 일치에 대하여 검색한다. 포인트 155에서 이전 x 좌표 사이에 일치가 존재하면, 새로운 프레임에서 동일한 물체가 다시 검색된 것을 나타낸다. 그 후 이하를 행한다:
ㆍ 모션 트랙 FIFO에 대하여 동일한 물체의 중간점을 기입한다.
ㆍ 모션 트랙 FIFO에 대하여 동일한 물체 마크를 기입한다.
포인트 (154)에서, m의 범위 내에서 이전 및 새로운 좌표의 동일한 y 좌표가 검출되지 않았다면, 새로운 y 좌표가 이전의 y 좌표보다 작다는 것을 나타낸다. 도 7C의 분석은 이는 새로운 물체의 출현을 나타내며, 포인트 161에 천이하여 이하를 수행한다:
ㆍ 새로운 물체의 x 및 y 좌표를 새로운 물체 마크와 함께 모션 트랙 FIFO에 기입한다.
ㆍ FIFO로부터 새로운 x 및 y 좌표를 판독하여 y의 검색 범위를 y-m에 설정하고, x의 검색 범위를 y-n에 설정한다.
ㆍ 이전 프레임의 x 및 y 좌표를 보유하여, 포인트 152에 천이한다.
포인트 157에서, n의 범위 내에서 이전의 좌표 및 새로운 좌표에서 동일한 x 좌표가 검출되었다면, 새로운 x 및 y 좌표가 이전의 좌표보다 크다는 것을 나타낸다. 도 7C의 분석은 이는 이전 물체의 소멸을 나타내며, 포인트 162에 천이하여 이하를 수행한다:
ㆍ 물체 마크의 검출의 종료를 모션에 기입한다.
ㆍ 이전 FIFO로부터 x 및 y 좌표를 판독한다.
ㆍ 새로운 x 및 y 좌표를 보유하여, 새로운 y의 검색 범위를 y-m으로 새로운 x의 검색 범위를 y-n으로 설정한다.
ㆍ 포인트 152에 천이한다.
모션 벡터 측정 메모리(도 9)
3차원 공간에서 움직이는 다색채화된 3차원 물체는, 이하와 같이 6의 자유도에 있어서 물체의 모션에 관련되는 회전 값들뿐만 아니라 거리 x, y, 및 z의 순시 벡터 측정을 제공한다:
a) 3차원 공간에서 움직이는 다색채화 물체들은, 카메라에 의해 검출 시, 각각의 프레임에 상이한 컬러 면적들의 고유한 서명을 등록하게 되며, 여기서, 미리 정의된 컬러들의 그룹 내에서 모든 컬러들 중 각각의 컬러 아래의 면적들은 3차원 공간에서 고유한 순시 회전각 및 상이한 컬러들의 총 면적을 나타내게 되며, z 방향에서 거리의 순시 크기를 제공한다.
b) 관련된 컬러들 및 컬러 번호들 중 각각의 컬러에 대한 면적을 메모리에 대한 어드레스로서 설정함으로써 움직이는 물체의 회전 위치의 상대값이 얻어지며, 여기서, 3개의 각도 위치에 대한 데이터는 교정 중에 이미 등록되어 있다.
ㆍ 실시간 모션 검출 및 처리 중에, 그들의 관련된 컬러 번호들을 포함하는 모든 컬러 부분의 면적 카운트는 메모리에 대한 어드레스로서 구성되며, 대응하여 이전에 측정된 z의 절대값과 각도 치수들이 데이터로서 판독된다.
c) 다색채 물체의 임의의 셋트에서 z 방향의 순시 위치 및 순시 각도 위치들의 측정은, 교정 중에 수행되는 경험적인 측정에 대한 순시 측정의 비교의 결과이다.
d) 각 컬러의 표면 면적은 프레임 실시간 모션 검출에서 검출되는 컬러들의 셋트 중에서 특정 컬러의 픽셀들의 수를 계수함으로써 측정된다.
e) z 방향의 모션의 값들의 교정 및 3개의 순시 각도 모션 값들은, 각각의 컬러 아래의 면적의 경험적 측정 및 각각의 컬러 번호에 의해 어드레싱된 된 메모리 및 각각의 관련 컬러들의 검출된 면적에 알려진 벡터 모션 값들을 기록한 결과이다.
f) z의 교정된 순시값과, x, y, 및 z 회전 벡터들이 메모리에 기록되는 한편, 메모리에 대한 어드레스는 각각의 특정 컬러 하의 면적 및 검출된 지정 컬러 번호들이다.
g) 이전 프로세스(e)는, 프레임 내의 각각의 모션에 관련되는 상이한 컬러의 면적들의 모션 및 픽셀 측정 중에 다색채화된 물체의 모션 시뮬레이션에 의해 활용가능하게 된다.
h) 회전값들이 작다면, z 방향의 모션의 변화가 관련 컬러 총 면적의 과거 및 현재 검출값의 비율에 의해 근사화된다.
i) 다색채화된 물체의 상기 x 및 y 순시 측정 및 카메라가 실장된 짐벌의 2차원 회전을 이용하여 트랙킹이 수행된다.
j) 상기 정보를 이용하여, 광학 또는 픽셀 줌이 가능하게 된다.
이하, 도 9의 수치 번호들을 참조하면, 회전 모션 검출기 메모리(41)는 물체 식별 프로세서로부터 관련된 그룹 번호와 함께 각 그룹의 물체(43, 45, 46)의 각각의 컬러의 픽셀들의 개별 총수를 수신한다. 이 정보를 스펙트럼 식별 번호와 함께 회전 벡터 모션 측정 메모리에 대한 어드레스로서 설정하고, 물체의 Z 방향의 모션(48)뿐만 아니라 3차원 회전값(47)들을 수신한다. 도 4, 도 4A, 및 도 5는 3차원 공간에서 움직이는 다색채화 입방체 및 반구의 모션들을 나타낸다.
모션 변화 검출기 프로세서
모션 변화 검출기 프로세서는 회전 x, y, 및 z 벡터들 및 Z 좌표값을 벡터 측정 RAM으로부터 수신한다. 또한, 각 물체의 이 프레임으로부터 이전 프레임까지 그들의 관련된 경과 시간을 계산한다. 이 측정으로부터 이전 프레임 측정까지 각 물체의 속도 및 가속도를 계산한다. 경과 시간은 이하와 같이 계산된다:
ㆍ 2개의 프레임의 검출 사이의 경과 시간은, 이 프레임 검출 시간의 중간점과 이전 프레임 검출 시간의 중간점 사이이다.
ㆍ 중간점 시간은, 검출이 발생하는 프레임을 둘로 나누어, 첫번째 행에서부터 마지막 행까지 사이의 시간차이다.
경과된 시간으로 나눈 2개의 프레임 중 벡터 측정치의 변화에 의해 벡터 속도가 유도된다. 이 정보는 모션 트랙 FIFO에 전달된다.
상기 상술한 가능예는 기록된 종래 기술에 대하여 신규한 것으로 간주되며, 본 발명의 최적 모드 실시예의 적어도 일 양태의 동작에 대하여 또한 상기 설명한 목적의 성취에 대하여 중요한 것으로 간주된다. 본 실시예들을 설명하기 위하여 본 명세서에서 사용된 언어들은, 그들의 공통적인 뜻의 의미뿐만 아니라 공통적으로 정의되는 의미의 범주를 넘어서는 구조, 재료, 또는 동작들을 포함하여, 본 명세서의 특별한 정의도 포함하도록 이해되어야 한다. 따라서, 구성요소가 본 명세서의 문맥에서 하나 이상의 의미를 포함하는 것으로 이해될 수 있다면, 그 사용은 본 명세서에 의해 지지되는, 구성요소를 설명하는 단어(들)에 의해 지지되는 모든 가능한 의미들에 대하여 포괄적인 것으로 이해되어야 한다.
본 명세서에 기재된 본 발명의 실시예들과 기재되지 않은 그 관련 실시예들의 단어 또는 구성요소들의 정의는 따라서 본 명세서에서 문자상으로 명기된 구성요소들의 조합뿐만 아니라, 실질적으로 동일한 결과를 성취하기 위한 실질적으로 동일한 방법으로 실질적으로 동일한 기능을 수행하기 위한 모든 균등한 구조, 재료, 또는 동작들 또한 포함하는 것이다. 따라서, 이러한 의미에서, 본 발명의 구성요소들 및 그 다양한 실시예들 중 임의의 하나에 대하여 2개 이상의 구성요소의 균등한 대체가 이루어질 수 있거나, 또는 단일 구성요소가 청구범위의 2개 이상의 구성요소들에 대하여 대체될 수 있는 것으로 상정된다.
현재 알려진 또는 향후 수정되는 당업자에 의해 파악되는 바와 같은 청구된 요지로부터의 변경은, 본 발명의 범주 및 그 다양한 실시예들 내에서 균등한 것으로 명시적으로 상정되는 것이다. 따라서, 당업자에 의해 지금 또는 향후 알려지는 명백한 대체예들은 정의된 구성요소들의 범주 내인 것으로 정의된다. 본 발명과 그 다양한 실시예들은 따라서 구체적으로 예시되어 상기 설명된 것과, 개념적으로 균등한 것과, 명백하게 대체될 수 있는 것과, 또한 본질적으로 본 발명의 본질적인 아이디어를 포함하는 것을 포함하는 것으로 이해되어야 한다.
본 발명을 적어도 하나의 바람직한 실시예를 참조하여 설명하였지만, 당업자라면 본 발명은 이에 한하지 않는다는 것을 명백하여 이해할 수 있을 것이다. 더욱이, 본 발명의 범주는 첨부된 청구항과 연계하여서만 해석되어야 하며, 여기서, 발명자(들)이 청구된 요지가 본 발명에 해당하는 것이라 확신하는 것이 명확하게 되는 것이다.

Claims (10)

  1. 래스터 입력 픽셀 신호들의 시퀀스의 디지털 비디오 필터링을 수행하는 장치로서, 각각의 해당 래스터 입력 픽셀은, 픽셀의 n 개의 컬러 식별을 의미하도록 비디오 카메라 또는 센서들로부터 순차화된 n개의 값들의 셋트를 가지며,
    a) 인입하는 디지털 비디오 데이터 비트 스트림의 헤더와 동기화하며, "n" 개의 프라임 컬러들의 셋트 중 각각의 하나 및 픽셀 타이밍 내의 각각의 프라임 컬러의 위치를 식별하기 위하여 필요로 되는 디지털 타이밍 및 제어 신호를 제공하는 디지털 비디오 동기화 및 타이밍;
    b) 래스터 입력 프라임 신호들의 n개의 시퀀스의 강도들을 수신하고, 각각의 해당하는 n개의 프라임 컬러 강도를 해당하는 프라임 컬러 메모리 어드레스에 맵핑하도록 결합되는 프라임 컬러 디지털 필터, 여기서, 각각의 메모리 어드레스는,
    소정의 메모리 어드레스 범위 내의 해당 메모리 어드레스,
    (각각의 소정의 메모리 어드레스 범위는, 다색채화된 물체가 속하는 n개의 입력의 각각의 프라임 컬러를 식별함)
    다색채화된 프라임 식별 번호,
    물체가 속하는 컬러들의 그룹,
    다색채화된 물체의 그룹 식별 번호를 포함하며,
    각각의 메모리 어드레스는 물체에 속하는 컬러들의 그룹 및 다색채화된 물체들의 상이한 그룹들 내의 다색채화된 물체의 프라임 컬러들을 식별함; 및
    c) 다색채화된 물체에 속하는 컬러들의 그룹의 다색채화된 물체의 프라임 컬러 식별 번호를, 메모리 어드레스에 대한 입력으로서 수신하도록 결합되는 스펙트럼 컬러 디지털 필터, 여기서, 각각의 메모리 어드레스는,
    소정의 메모리 어드레스 범위 내의 해당 메모리 어드레스,
    (각각의 소정의 메모리 어드레스 범위는 다색채화된 물체의 n개의 입력의 각각의 컬러를 식별함),
    다색채화된 식별 번호,
    물체에 속하는 컬러들의 그룹,
    다색채화된 물체의 그룹 식별 번호,
    컬러들의 스펙트럼 내의 컬러의 검출을 나타내는 컬러 식별 마크를 포함하며,
    각각의 메모리 어드레스는 물체에 속하는 컬러들의 그룹 및 다색채화된 물체들의 상이한 그룹들 내의 컬러 스펙트럼 내의 다색채화된 물체의 각각의 컬러를 식별함
    를 포함하는 디지털 비디오 필터링 장치.
  2. 제1항에 있어서,
    상기 디지털 스펙트럼 필터의 출력에 결합되는 시프트 레지스터 기반의 하드웨어 블록이, 프레임의 행 내에서 행의 "n"개의 픽셀들의 부재를 검출하며, 여기서, "n"은 다음과 같이 동일한 컬러 또는 상이한 컬러의 2개의 물체 간의 픽셀 간격의 검출을 위한 임의의 수로서,
    a) 컬러 스펙트럼 메모리의 출력으로부터 픽셀 식별 마크가 검출되는 때마다 상기 쉬프트 레지스터가 "n"의 숫자로 로딩되고;
    ㆍ "n"은 최종 픽셀 검출 마크에 이어서, 행 내의 연속적인 비검출 픽셀들의 수를 나타내는 임의의 숫자임,
    ㆍ 픽셀 검출 마크가 발견되지 않는 각각의 연속적인 픽셀 시간 동안 쉬프트 레지스터의 상기 "n"은 1씩 감소됨,
    b) "n" 카운트의 말단에서, 상기 레지스터는 행 내에서 "n" 개의 픽셀들의 부재를 의미하는 갭 신호를 생성하며;
    a) 픽셀 프로세서가 상기 갭 정보를 비디오 데이터 FIFO에 기입된 최종 검출된 픽셀 식별 데이터로 수정하고,
    b) 갭이 동일한 행에서 동일한 컬러 픽셀 또는 또 다른 지정된 컬러 픽셀로부터의 행에서 지정된 컬러 픽셀을 가지지 않으며,
    c) 갭이 동일한 컬러 픽셀 또는 또 다른 지정된 컬러 픽셀로부터 행에서 지정된 컬러 픽셀을 가지지 않는
    디지털 비디오 필터링 장치.
  3. 수평 및 수직의 복수의 서브-프로세서를 포함하는 분산형 프로세서로서,
    개별 프로세서들이, 복수의 FIFO(First In First Out) 메모리와 함께 시간 동기화된 이종의 기능 아키텍처에서 서로에 대하여 전처리 및 후처리 배치로서 배치되어 있고, 여기서, FIFO들은 하나의 프로세서를 다른 프로세서에 연결하여 반처리된 데이터를 하나의 프로세서에서 또 다른 프로세서로 전달하며;
    a) 분산형 프로세서가 연속적으로 디지털 필터로부터 수신되는 데이터를 처리하여, 이러한 데이터를 6의 자유도에서 이동하는 컬러화된 물체의 가속도, 좌표 위치, 및 속도로 변환하고, 상기 장치는
    필터 프로세서;
    비디오 데이터 FIFO;
    픽셀 그룹 식별자 프로세서;
    그룹 식별자 FIFO;
    행(x) 및 열(y) 좌표 프로세서;
    중간점 x(행) 및 열(y) 좌표 FIFO;
    델타 시간 프로세서;
    물체 식별 프로세서;
    모션 거리 및 회전 검출기;
    벡터 모션 측정 RAM;
    모션 트랙 FIFO; 및
    모션 트랙 프로세서
    를 포함하며,
    b) 개별 프로세서들은, 각각의 프로세서의 태스크들이 프레임의 시작에 동기화되며 각각의 태스크가 동일한 프레임의 말단 이전에 종료되어야 하는, 비디오 프레임에 동기화되며,
    c) 수직 방향의 서브 프로세서 기능적 태스크는, 각각의 프로세서 태스크가 최소값으로 유지되도록 확장되며,
    d) 수평 방향의 프로세서들의 기능적 태스크는, 각각의 프로세서가 프레임의 시간 내에서 상기 데이터의 다른 부분들에 대하여 정확한 동일한 기능을 수행하도록 확장되며;
    e) 프레임의 타이밍은 각각의 프로세서 데이터가 프레임 내의 세부적인 타이밍에 기초하여 인터리브되고 지향되도록 상기 데이터 흐름을 지향시키도록 활용되는
    분산형 프로세서 장치.
  4. 제3항에 있어서,
    상기 컬러 스펙트럼 필터에 결합되는 상기 필터 프로세서는, 그 픽셀 타임 중에 픽셀 컬러의 검출을 나타내도록, 상기 픽셀 검출 마크가 스펙트럼 컬러 필터의 출력에 나타나는 때마다 상기 컬러 스펙트럼 메모리로부터 픽셀 정보를 판독하여,
    a) 필터링된 컬러 픽셀 데이터;
    ㆍ 다색채화된 물체의 스펙트럼 식별 번호;
    ㆍ 물체에 속하는 (컬러들의) 그룹 번호;
    b) 상기 비디오 프레임 행 카운터로부터의 행의 말단에서의 프레임 행 카운트;
    c) 상기 열들의 말단(프레임의 말단)에서 비디오 프레임 열 카운트로부터의 열 카운트;
    d) 픽셀 갭 검출;
    e) 필터 프로세서 기입 및 픽셀 식별자 프로세서 판독을 위하여 A에서 B로 및 B에서 A로 비디오 데이터 FIFO의 순서의 변경
    을 비디오 데이터 FIFO에 제공하는 분산형 프로세서 장치.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 픽셀 그룹 식별자 프로세서는, 다음 단계의 처리를 위하여 픽셀들의 다른 통계적 데이터와 함께 그들의 컬러, 컬러 그룹 식별정보, 및 필터링 중 검출되었던 x(행) 좌표 어드레스에 기초하여 수신된 픽셀들의 컬러들을 분류하여 분리하며,
    a) 상기 비디오 FIFO로부터 새로운 픽셀에 대하여 검사하는 단계(102);
    b) 상기 비디오 데이터 FIFO로부터의 컬러 번호 및 그룹 번호와 함께 제1 픽셀의 x 좌표 기준을 판독하여 보유하는 단계(102);
    c) 동일한 컬러라면, 단계 106에 천이하여 이하를 수행하는 단계(105):
    ㆍ 그룹 내에 있는 행 내의 동일한 컬러의 픽셀의 수를 가산하는 단계;
    ㆍ 상기 행 내의 가장 큰 x 좌표 및 가장 작은 x 좌표를 보유하는 단계;
    ㆍ 그 사이의 x 좌표 데이터를 폐기하는 단계; 및
    ㆍ 단계 104에 천이하는 단계;
    e) 동일한 컬러가 아니라면, 단계 107에 천이하는 단계(105);
    f) 동일한 컬러들의 그룹에 속한다면, 단계 104에 천이하는 단계(107);
    g) 컬러가 동일한 그룹에 속하지 않는다면, 이하의 것을 그룹 식별자 FIFO에 기입하는 단계(107):
    ㆍ 행에서 발견되는 컬러들의 그룹의 모든 픽셀의 가산;
    ㆍ 행에서 발견되는 컬러들의 그룹의 중간점 기준 x;
    - 그룹에 속하며 갭 마크에서 종료하는 컬러들의 그룹의 시작 및 종료 좌표 어드레스;
    - 비검출 갭 이전의 동일한 컬러 픽셀들의 컬러 픽셀의 시작 및 말단 검출;
    ㆍ 행에서 발견되는 컬러들의 열 갯수;
    ㆍ 단계 109에 천이함;
    h) 갭 마크를 검사하여, 갭이 없다면, 에러 메시지를 생성하여, 단계 104에 천이하느 단계(109);
    i) 갭이 있다면, 단계 111에 천이하는 단계(109);
    j) 비디오 데이터 FIFO의 빈 신호를 검사하여, 비어있지 않다면, 단계 102에 천이하는 단계(111);
    k) FIFO가 비어 있다면, 단계 113에 천이하는 단계(111);
    l) 기입될 데이터의 다음 프레임에 대하여 A부터 B까지, 및 판독될 다음 단계 프로세서에 대하여 B에서 A까지 그룹 식별자 FIFO를 인에이블시키고, 단계 102에 천이하는 단계(113)
    를 포함하는 방법을 실시하는 장치 (단계의 번호는 도 6을 참조함) .
  6. 제3항에 있어서,
    상기 그룹 식별자 FIFO에 결합되는 상기 중간점 x(행) 및 y(열) 좌표 프로세서는 물체의 중간점 x 및 y 좌표를 분류하여 식별한다. 2개의 중간점 기준 좌표들을 처음 검사하고, 동일하다면, 분리되어 있었던 열들의 수를 검사한다. 분리가 없었다면, 동일한 물체인 것으로 가정하고, 그렇지 않다면, 새로운 검출된 물체인 것으로 가정한다. 방법과 상세한 기능적 동작은 도 7, 도 7A, 도 7B, 및 도 7C에 도시되어 있으며,
    a) 그룹 식별자 FIFO의 첫번째 좌표 어드레스로부터 시작하여, 비교를 위하여 x의 중간점들의 첫번째 엔트리를 판독하는 단계(131);
    b) 상기 그룹 식별자 FIFO로부터 다음 엔트리를 판독하고, 두번째 중간점을 +/- "n"만큼 확장하는 단계(132), 여기서, "n"은 하나의 열로부터 또 다른 열까지 2개의 x 좌표 중간점 좌표들의 분리 및 간격을 나타냄;
    c) 첫번째 x - "n" 좌표 어드레스로부터 시작하여, 2개의 x 중간점들의 근접도를 비교하는 단계(133);
    d) 2개의 중간점 x들이 동일하다면, 단계 134에 천이하는 단계(133);
    e) 2개의 좌표 판독이 동일하지 않다면, 단계 137에 천이하여, +/- n의 범위에서 검색을 계속하는 단계(133);
    f) x를 1만큼 증분하고, 단계 138에 천이하는 단계(137);
    g) 중간점 x 기준 좌표에 대한 검색 범위의 말단이 아니라면, 단계 133에 천이하는 단계(138);
    ㆍ 단계 138에서, 검색의 말단에서, 2개의 x 좌표가 동일한 범위인 것으로 발견되지 않았다면, 두번째 좌표가 새로운 물체에 해당하는 것을 의미하고, 단계 139에 천이함;
    h) 2개의 중간점이 "m"만큼 분리되어 있는지 검사하고, 여기서, m은 열들의 분리의 수를 나타내며, 만일 그렇다면, 단계 136에 천이하는 단계(134);
    i) 2개의 중간점 좌표가 m만큼 분리되어 있지 않다면, 좌표가 동일한 물체의 것이라고 가정하여, 단계 135에 천이하는 단계(134);
    j) 가깝게 위치된 열들에서 좌표가 동일한 물체의 것이라고 가정하여, 다음의 단계를 수행하는 단계(135):
    ㆍ 연속하는 열들의 x 중간점 기준의 추후 계산을 위하여 가장 작은 x 좌표와 가장 큰 x 좌표를 보유하는 단계;
    ㆍ 발견되는 첫번째 열 및 최종 열을 보유하는 단계; 및
    ㆍ 단계 132에 천이하는 단계
    k) FIFO의 빈 신호를 검사하는 단계(136);
    l) FIFO가 비어있지 않다면, 단계 131에 이행하고, 비어 있다면, 다음 프레임의 기입을 위하여 A에서부터 B로, 다음 프로세서 판독을 위하여 B에서부터 A로, X 및 Y 좌표 FIFO를 변경하고, 단계 131에 이행하는 단계(136);
    m) 이하를 행하는 단계(139):
    ㆍ x 및 y 중간점 좌표를 계산하는 단계;
    ㆍ 상이한 행들에서 발견되는 동일한 그룹의 픽셀들 전부를 가산하는 단계;
    ㆍ 상기 그룹 식별자 FIFO 다음에 두번째 판독을 기입하는 단계; 및
    ㆍ 단계 131에 복귀하는 단계
    를 포함하는 장치(단계의 번호는 도 7을 참조함).
  7. 제3항에 있어서,
    상기 x 및 y 좌표 FIFO에 결합되는 상기 물체 식별 프로세서는, 행(x)과 열(y)에 관련되는 새로운 프레임의 중간점 좌표 어드레스 상에서의 물체들의 출현 또는 소멸, 이전 프레임의 이전 좌표와 새로운 프레임의 새로운 좌표의 비교에 기초하여 물체들을 식별하며,
    a) 이전 프레임의 y 및 x 중간점 좌표를 FIFO의 A 또는 B로부터 판독하고, FIFO의 B 또는 A로부터 새로운 프레임의 y 및 x 중간점 좌표를 판독하는 단계(150);
    b) 새로운 중간점 y 좌표를 y-m으로 설정하는 단계, 여기서, "m"은 2개의 물체가 분리되는 것으로 간주되는 열들의 수를 나타냄;
    c) 새로운 중간점 x 좌표를 x-n으로 설정하는 단계, 여기서, "n"의 2배는 2개의 물체들이 분리되는 것으로 간주되는 픽셀들의 수를 나타냄;
    d) 이전 y 좌표의 "m"의 범위 내에서 새로운 좌표 중 어느 하나에 대한 일치를 검색하고, 동일하다면, 단계 155에 천이하고, 그렇지 않다면, 단계 153에 천이하는 단계(152);
    e) 이전 x 좌표의 +/- n의 범위 내에서 새로운 x 좌표에 대한 일치를 검색하고, 동일하다면, 단계 158에 천이하고, 그렇지 않다면, 단계 156에 이행하는 단계(155);
    f) 이하를 수행하는 단계(158)
    ㆍ 모션 트랙 FIFO에 대하여 동일한 물체의 마크와 함께 물체들의 좌표를 기입하는 단계;
    ㆍ 다음의 x 및 y 좌표를 새로운 FIFO에 되돌려 기입하는 단계; 및
    ㆍ 단계 163에 천이하는 단계
    g) 프레임 마크의 말단이 아니라면, 프레임의 말단까지 단계 a)를 반복하고, 프레임의 말단이라면, 단계 150에 복귀하고, 그렇지 않다면, 새로운 프레임을 대기하고, 단계 150에 이행하는 단계(163);
    h) 새로운 y가 발견될 수 없다면, 새로운 물체의 출현으로 인하여 새로운 y 어드레스가 더 작다는 것을 의미하며, 이하의 단계를 수행하는 단계(154):
    ㆍ 새로운 물체 좌표를 새로운 물체 마크와 함께[ 다음 단의 FIFO에 기입하는 단계;
    ㆍ 이전 프레임의 y 및 x 중간점 좌표를 보유하는 단계;
    ㆍ 새로운 프레임의 y 및 x 중간점 좌표를 판독하는 단계; 및
    ㆍ 새로운 중간점 y를 y-m으로 설정하고, 새로운 x 중간점을 x-n으로 설정하고, 단계 152에 이행하는 단계;
    i) 새로운 x가 발견될 수 없었다면, 이는 새로운 y 및 x 좌표 어드레스가 이전의 것보다 큰 것을 의미하며, 이전 물체가 화면으로부터 사라졌음을 나타내며, 이하의 단계를 수행하는 단계(157):
    ㆍ 이전 물체의 소멸 마크를 다음 단의 FIFO에 기입하는 단계;
    ㆍ 새로운 프레임의 y 및 x 중간점 좌표를 보유하는 단계;
    ㆍ 이전 프레임의 y 및 x 중간점 좌표를 판독하는 단계; 및
    ㆍ 새로운 중간점 y를 y-m으로 설정하고, 새로운 x 중간점을 x-n으로 설정하고, 단계 152에 이행하는 단계
    를 포함하는 방법을 수행하는 장치.
  8. 제3항에 있어서,
    상기 X 및 Y 좌표 FIFO에 결합되는 회전 및 거리 프로세서 장치가, 카메라를 대향하는 그 개별 픽셀 컬러 카운트에 기초하여 6의 자유도에서 이동하는 다색채화된 물체의 z에서의 회전 각도 및 거리를 측정하며,
    a) 각 컬러에 대한 총 면적, 즉, 컬러들의 총 픽셀 카운트 및 메모리에 대한 어드레스로서의 그룹의 컬러 번호들을 설정하는 단계, 여기서, 메모리의 데이터는 교정 중에 기록된 이동하는 물체의 미리 기록된 순시 각도 위치를 나타냄;
    ㆍ 3차원 공간에서 이동하는 다색채화된 3차원 물체들의 컬러 면적은, 6의 자유도에서 상기 물체의 회전 값뿐만 아니라 방향으로서의 z의 거리의 순시 측정을 제공함;
    ㆍ 3차원 공간에서 이동하는 다색화된 물체들은, 카메라에 의해 검출 시, 각각의 프레임에서 상이한 컬러 영역들의 고유 서명을 등록하며, 여기서, 미리 정의된 컬러들의 그룹의 모든 컬러들 중 각각의 컬러 아래의 면적은 3차원 공간에서 고유한 순시 회전 각도를 나타내며, 상이한 컬러들의 총 면적은 z 방향에서 거리의 순시 크기를 제공함;
    ㆍ 교정 중에, 카메라에 대한 그 컬러 노출 및 모든 컬러 부분의 면적 카운트에 기초한 물체의 경험적인 실시간 모션 검출 및 그 관련 컬러 번호들이 메모리에 대한 어드레스로서 구성되어, 순시 값들을 제공하도록 기록됨;
    b) z 방향 모션의 값들 및 3개의 순시 각도 모션 값들의 교정이, 각 컬러 아래 면적의 경험적 측정 및 각각의 그룹 컬러 번호에 의해 어드레싱되는 메모리 내의 알려진 벡터 모션 값들과 각각의 관련된 컬러들의 검출된 면적을 기록한 결과가 되도록 하는 단계;
    ㆍ z의 교정된 순시값 및 x, y, 및 z의 회전 벡터들이 메모리에 기록되는 한편, 메모리에 대한 어드레스는 각각의 특정 컬러 및 검출되어 지정된 컬러 번호들 하의 면적임;
    c) 회전값들이 작다면, z 방향의 모션의 변화는 전체의 관련 컬러 영역들의 과거 및 현재의 검출된 값의 비율로 근사화하는 단계; 및
    d) 상기 정보를 모션 트랙 FIFO에 보내는 단계
    를 수행하는 장치.
  9. 제3항에 있어서,
    거리, 속도, 및 가속도의 벡터 측정은 프레임 별로
    a) 2개의 프레임 중에 벡터 측정의 변화를 경과 속도로 나누어 벡터 속도를 도출 하고;
    b) 2개의 프레임들에서 동일 물체의 중간점들의 검출 사이로서 경과 시간을 측정하여
    이루어지는 장치.
  10. 제3항에 있어서,
    상기 분산형 프로세서 아키텍처는
    a) 개별 프로세서들을 처리 태스크들이 하나의 클록 주기 내에서 발생하는 메모리 기반의 상태 머신으로 구성하여, 디코딩 인스트럭션을 포함하는 통상적인 메모리 기반의 CPU 내의 메모리로부터 인스트럭션을 패치하고 포인터 어드레스들을 증대 또는 감소시키기 위하여 필요한 클록들을 소거하며;
    b) 판독될 상태 머신에 대하여 하나의 어드레스만이 존재하고, 기입된 상태 머신에 대하여 하나의 어드레스만이 존재하는, 데이터의 저장장치만으로서 FIFO들을 이용함으로써
    처리 횟수 시간을 소거하도록 이루어지는 장치.
KR1020117001102A 2008-09-08 2008-09-08 디지털 비디오 필터 및 화상 처리 KR20110053417A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2008/010484 WO2010027348A1 (en) 2008-09-08 2008-09-08 Digital video filter and image processing

Publications (1)

Publication Number Publication Date
KR20110053417A true KR20110053417A (ko) 2011-05-23

Family

ID=41797344

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117001102A KR20110053417A (ko) 2008-09-08 2008-09-08 디지털 비디오 필터 및 화상 처리

Country Status (8)

Country Link
EP (1) EP2321819A4 (ko)
JP (1) JP2012502275A (ko)
KR (1) KR20110053417A (ko)
CN (1) CN102077268A (ko)
CA (1) CA2725377A1 (ko)
GB (1) GB2475432B (ko)
IL (1) IL211130A0 (ko)
WO (1) WO2010027348A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8872969B1 (en) 2013-09-03 2014-10-28 Nvidia Corporation Dynamic relative adjustment of a color parameter of at least a portion of a video frame/image and/or a color parameter of at least a portion of a subtitle associated therewith prior to rendering thereof on a display unit
CN104537974B (zh) 2015-01-04 2017-04-05 京东方科技集团股份有限公司 数据获取子模块及方法、数据处理单元、系统和显示装置
WO2016178643A1 (en) * 2015-05-06 2016-11-10 Erlab Teknoloji Anonim Sirketi Method for analysis of nucleotide sequence data by joint use of multiple calculation units at different locations
CN116918718A (zh) * 2017-08-07 2023-10-24 杰克逊实验室 长期且连续的动物行为监测
JP2020004247A (ja) * 2018-06-29 2020-01-09 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
CN111384963B (zh) * 2018-12-28 2022-07-12 上海寒武纪信息科技有限公司 数据压缩解压装置和数据解压方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2845473B2 (ja) * 1989-02-13 1999-01-13 繁 安藤 動画像の運動、非運動領域検出装置
US6177922B1 (en) * 1997-04-15 2001-01-23 Genesis Microship, Inc. Multi-scan video timing generator for format conversion
MXPA01003035A (es) * 1998-09-24 2002-04-09 Secr Defence Mejoras relacionadas a reconocimiento de patron.
MXPA03001804A (es) * 2000-08-31 2004-05-21 Rytec Corp Sistema sensor y de imagenes.
US6831653B2 (en) * 2001-07-31 2004-12-14 Sun Microsystems, Inc. Graphics pixel packing for improved fill rate performance
US20030098869A1 (en) * 2001-11-09 2003-05-29 Arnold Glenn Christopher Real time interactive video system
US7356190B2 (en) * 2002-07-02 2008-04-08 Canon Kabushiki Kaisha Image area extraction method, image reconstruction method using the extraction result and apparatus thereof
US20040130546A1 (en) * 2003-01-06 2004-07-08 Porikli Fatih M. Region growing with adaptive thresholds and distance function parameters
US7956889B2 (en) * 2003-06-04 2011-06-07 Model Software Corporation Video surveillance system

Also Published As

Publication number Publication date
GB2475432A (en) 2011-05-18
EP2321819A4 (en) 2014-03-12
IL211130A0 (en) 2011-04-28
CA2725377A1 (en) 2010-03-11
WO2010027348A1 (en) 2010-03-11
EP2321819A1 (en) 2011-05-18
GB201021723D0 (en) 2011-02-02
CN102077268A (zh) 2011-05-25
JP2012502275A (ja) 2012-01-26
GB2475432B (en) 2013-01-23

Similar Documents

Publication Publication Date Title
CN107743638B (zh) 用于实时运动伪影处理和去噪的方法和系统
US10302424B2 (en) Motion contrast depth scanning
US8139823B2 (en) Method for capturing images comprising a measurement of local motions
Ishii et al. Development of high-speed and real-time vision platform, H 3 Vision
KR20110053417A (ko) 디지털 비디오 필터 및 화상 처리
CN104867123A (zh) 利用融合的红外线分辨率与对比度增强
CN111080776B (zh) 人体动作三维数据采集和复现的处理方法及系统
US11212508B2 (en) Imaging unit and system for obtaining a three-dimensional image
CN106155299B (zh) 一种对智能设备进行手势控制的方法及装置
CN111047650B (zh) 一种用于飞行时间相机的参数标定方法
US7529404B2 (en) Digital video filter and image processing
Cambuim et al. Hardware module for low-resource and real-time stereo vision engine using semi-global matching approach
CN113686314A (zh) 船载摄像头的单目水面目标分割及单目测距方法
CN116486250A (zh) 一种基于嵌入式的多路图像采集与处理方法及系统
CN104200456B (zh) 一种用于线结构光三维测量的解码方法
WO1988002518A2 (en) Real time generation of stereo depth maps
CA3206206A1 (en) Device and method for correspondence analysis in images
CN109509213A (zh) 一种应用于异步时域视觉传感器的Harris角点检测方法
JP2001338280A (ja) 3次元空間情報入力装置
JP2007036743A (ja) 複数画像合成方法及び撮像装置
CN109781259B (zh) 一种图谱关联的精准测量空中运动小目标红外光谱的方法
CN114821075A (zh) 空间目标捕获方法、装置、终端设备及存储介质
Deshmukh et al. Embedded vision system for atmospheric turbulence mitigation
Yang et al. A general line tracking algorithm based on computer vision
CN113269207B (zh) 一种用于网格结构光视觉测量中的图像特征点提取方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid