KR100750096B1 - 효율적인 영상 처리를 위한 전/후처리 방법 및 그를적용한 전/후 처리 시스템 - Google Patents

효율적인 영상 처리를 위한 전/후처리 방법 및 그를적용한 전/후 처리 시스템 Download PDF

Info

Publication number
KR100750096B1
KR100750096B1 KR20010021122A KR20010021122A KR100750096B1 KR 100750096 B1 KR100750096 B1 KR 100750096B1 KR 20010021122 A KR20010021122 A KR 20010021122A KR 20010021122 A KR20010021122 A KR 20010021122A KR 100750096 B1 KR100750096 B1 KR 100750096B1
Authority
KR
South Korea
Prior art keywords
memory
area
image
video data
unit
Prior art date
Application number
KR20010021122A
Other languages
English (en)
Other versions
KR20020081761A (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 삼성전자주식회사
Priority to KR20010021122A priority Critical patent/KR100750096B1/ko
Priority to EP20020252694 priority patent/EP1251702A3/en
Priority to JP2002115244A priority patent/JP3950003B2/ja
Priority to CNB021161305A priority patent/CN1190960C/zh
Priority to US10/125,549 priority patent/US20020154889A1/en
Publication of KR20020081761A publication Critical patent/KR20020081761A/ko
Application granted granted Critical
Publication of KR100750096B1 publication Critical patent/KR100750096B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • 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
    • 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
    • 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/423Methods 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 characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

새로운 방식의 하드웨어-소프트웨어 협력 방식을 사용하여 빠른 속도로 동작하면서 최소의 메모리로 안정적인 동작을 하는 영상 전/후처리 시스템 및 그 방법이 개시되어 있다. 본 발명은 복수개의 저장 메모리 영역에 순서적으로 번호를 매핑하여 프레임 동기 신호마다 그 번호를 순환적으로 증가시키는 과정, 프레임 동기 신호에 따라 상기 저장 메모리 영역을 확인하면서 입력되는 비디오 데이터를 캡쳐하는 과정, 상기 캡쳐된 비디오 데이터를 상기 저장 메모리의 영역에 미리 정해진 순서에 따라 저장하는 과정을 포함하여 효율적으로 데이터를 캡쳐하고, 복수개의 메모리 영역에 순서적으로 번호를 매핑하여 프레임 동기 신호마다 그 번호를 순환적으로 증가시키는 과정, 프레임 동기 신호에 따라 디스플레이중인 메모리의 영역을 확인하면서 비디오 데이터를 상기 메모리의 영역에 미리 정해진 순서에 따라 저장하는 과정, 상기 과정에서 상기 메모리 영역에 저장된 비디오 데이터를 순차적으로 디스플레이시키는 과정을 포함하여 효율적으로 데이터를 디스플레이한다.

Description

효율적인 영상 처리를 위한 전/후처리 방법 및 그를 적용한 전/후 처리 시스템{Video pre-processing/post-processing method for processing video efficiently and pre-processing/post-processing apparatus thereof}
도 1의 (a) 및 (b)는 통상적으로 비디오의 캡쳐/디스플레이를 위한 폴링 방식을 설명하기 의한 타이밍도이다.
도 2의 (a) 내지 (c)는 통상적으로 비디오의 캡쳐/디스플레이를 위한 인터럽트 방식을 설명하기 의한 타이밍도이다.
도 3은 본 발명에 따른 전처리 시스템의 일 실시예를 보이는 블록도이다.
도 4는 캡쳐 순서에 따른 메모리의 구조도이다.
도 5의 (a) 내지 (c)는 본 발명에서 제안된 전처리 타이밍도이다.
도 6은 본 발명에 따른 전처리 방법을 보이는 흐름도이다.
도 7은 입력되는 Y, U, V 데이터의 타이밍도이다.
도 8은 프레임 단위로 입력되는 비디오 데이터의 타이밍도이다.
도 9는 도 4에 도시된 메모리를 제어하는 타이밍도이다.
도 10은 본 발명에 따른 후처리 시스템의 일 실시예를 보이는 블록도이다.
도 11은 디스플레이에 따른 메모리의 구조도이다.
도 12의 (a) 내지 (c)는 본 발명에서 제안된 후처리 타이밍도이다.
도 13는 본 발명에 따른 후처리 방법을 보이는 흐름도이다.
도 14는 도 11의 메모리를 제어하는 타이밍도이다.
본 발명은 영상 전/후 시스템에 관한 것으로서, 특히 새로운 방식의 하드웨어-소프트웨어 협력 방식을 사용하여 빠른 속도로 동작하면서 최소의 메모리로 안정적인 동작을 하는 영상 전/후처리 시스템 및 그 방법에 관한 것이다.
통상적으로 카메라로부터 입력되는 영상 데이터는 인코딩을 위해 캡쳐(capture)명령에 따라 정해진 메모리에 저장된다. 그리고 디스플레이 장치는 1초에 최대 30 프레임을 처리하므로 1 프레임을 처리하는데 최소 33ms를 소요한다. 따라서 하드웨어는 33ms마다 캡쳐가 가능함을 알리는 수직 동기 신호(Vsync)를 발생시키고, 소프트웨어는 수직 동기 신호가 발생할 때마다 또는 몇 번을 건너뛴 후 수직 동기 신호에 맞춰 캡쳐 명령과 메모리 주소를 하드웨어에게 알려준다. 이어서, 하드웨어는 그 명령에 따라 캡쳐된 영상 데이터를 지정된 메모리에 저장하게 된다.
또한 소프트웨어로 동작하는 디코더에서 디코딩이 끝난 영상 데이터는 소정의 메모리 영역에 저장하여 LCD와 같은 디스플레이장치를 통해 표시된다. 메모리가 엎 데이트될 때마다 소프트웨어는 하드웨어인 디스플레이 장치에게 엎데이트 정보를 알리고 엎 데이트된 메모리의 영역을 알려주게 된다. 이와 같이 인코딩 및 디 코딩 과정에서 영상 데이터를 저장하는 메모리는 보통 두개 이상을 사용하게 되는데 이것을 핑퐁(pingpong)메모리라고 부른다.
이때 소프트웨어가 카메라에서 들어오는 화면을 캡쳐하여 인코딩하거나 소프트웨어에 의해 저장된 영상 화면을 디스플레이하기 위해서는 크게 인터럽트 방식과 폴링 방식으로 나눌 수 있다.
먼저, 도 1을 참조하여 폴링(polling) 방식을 설명한다.
도 1에 도시된 바와 같이 소프트웨어(b)는 프레임의 데이터를 인코딩한 (110, 120)후 하드웨어(a)의 상태를 체크하면서 수직 동기 신호를 기다리고(waiting)있다가 하드웨어(b)로부터 수직 동기 신호를 수신하면 데이터(Frame1 및 Frame2)에 대한 캡쳐 명령을 전송한다. 그러나 폴링 방식은 하드웨어의 상태를 계속해서 물어봐야 하기 때문에 전체적인 속도가 많이 떨어진다.
이어서, 도 2를 참조하여 인터럽트(interrupt) 방식을 설명한다.
도 2에 도시된 바와 같이 하드웨어(a)는 소프트웨어(b)로부터 어떤 데이터를 필요로 할 때 즉시 인터럽트를 발생시켜 기존의 소프트웨어 동작을 잠시 멈추게 하고 필요한 동작과 관련된 소프트웨어 모듈을 강제로 동작하게 한다. 인터럽트가 발생되었을 때 소프트웨어(b)는 ISR(Interrupt Service Routine)를 수행한다.
이때 두개의 핑퐁(pingpong) 메모리만을 사용한다고 가정하면, (c)에 도시된 바와 같이 소프트웨어는 프레임(fr.2)를 인코딩하는 동안(210) 인터럽트를 받으면 그 인코딩 동작을 잠시 중단하고(212) 프레임(fr.1)의 데이터를 캡쳐하기 위해 필요한 정보들을 하드웨어에 전달하고 나서 다시 프레임(fr.2)을 인코딩하게 된다. 만약 아직도 프레임(fr.2)의 인코딩 동작이 끝나지도 않았는데 또 인터럽트가 들어오면 그때 소프트웨어는 다음 프레임(fr.2)에 대한 캡쳐 명령을 주지 않고 ISR을 빠져나와 계속 프레임(fr.2)의 인코딩 동작을 수행하게 된다.
따라서 인터럽트(interrupt)방식은 인터럽트가 발생하면 기다림 없이 즉시 인코딩 및 디코딩을 수행하므로 폴링 방식보다 속도가 빠르다.
그러나 인터럽트 방식은 폴링 방식에 비해 속도가 빠르긴 하지만 인터럽트를 너무 자주 발생시키면 RISC 프로세서의 경우 파이프라이닝(pipelining)이 깨지게 되어 전체적인 속도가 저하된다. 특히, 일반적인 시스템에서는 한가지 목적을 위한 단일 인터럽트를 쓰는 경우는 드물고 여러 종류의 인터럽트를 함께 사용하게 된다. 예를 들면, 카메라 인터럽트, LCD 인터럽트, LAN 인터럽트, UART 인터럽트등을 함께 사용하게 되고 그 중에서도 카메라와 LCD는 둘 다 33ms마다 항상 일정한 인터럽트를 발생시킨다. 따라서 종래와 같은 인터럽트 방식을 사용하는 시스템은 여러 종류의 인터럽트를 함께 사용하므로 전체적인 시스템 속도 및 안정성이 저하되는 단점이 있다.
또한 종래의 폴링 및 인터럽트 방식은 소프트웨어의 디코딩 시간이 일정하지 않기 때문에 영상 데이터를 불안정하게 보이게 한다. 즉, 연속된 프레임의 디코딩 시간이 너무 짧게 소요되어 디스플레이장치에 화면이 모두 표시되지 않았는 데도 가용 메모리 영역을 모두 사용했을 경우 그 이후에 디코딩된 영상 데이터는 버려져야 한다. 이것은 연속적인 영상의 부드러운 흐름이 어느 순간에 갑자기 움직이게 보이거나 인코더나 디코더의 자원(resource)을 불필요하게 사용하는 문제점이 있 다.
본 발명이 이루고자하는 기술적 과제는 폴링이나 인터럽트 방식이 아닌 새로운 방식의 하드웨어-소프트웨어의 협력 방식을 사용하여 빠른 속도로 동작하고 최소의 메모리로 안정적인 동작을 수행하는 영상 전처리 방법 및 장치를 제공하는 데 있다.
본 발명이 이루고자하는 다른 기술적과제는 폴링이나 인터럽트 방식이 아닌 새로운 방식의 하드웨어-소프트웨어의 협력 방식을 사용하여 빠른 속도로 동작하고 최소의 메모리로 안정적인 동작을 수행하는 영상 후처리 방법 및 장치를 제공하는 데 있다.
상기의 기술적 과제를 해결하기 위하여, 본 발명은 효율적으로 영상을 캡쳐하는 영상 전처리 방법에 있어서,
(a) 복수개의 저장 메모리 영역에 순서적으로 번호를 매핑하여 프레임 동기 신호마다 그 번호를 순환적으로 증가시키는 과정;
(b) 프레임 동기 신호에 따라 상기 저장 메모리 영역을 확인하면서 입력되는 비디오 데이터를 캡쳐하는 과정;
(c) 상기 캡쳐된 비디오 데이터를 상기 저장 메모리의 영역에 미리 정해진 순서에 따라 저장하는 과정을 포함하는 영상 전처리 방법을 특징으로 한다.
상기의 기술적 과제를 해결하기 위하여, 본 발명은 효율적으로 영상을 캡쳐하는 영상 전처리 장치에 있어서,
소정 개수의 영역으로 나누어 각각에 번호를 매핑시키는 메모리부;
프레임 동기 신호가 발생할 때 마다 상기 메모리부에서 사용중인 영역을 확인한 후 다음번에 사용할 메모리의 영역에 캡쳐 명령을 발생하는 소프트웨어부;
상기 메모리부의 번호를 프레임 동기 신호마다 순환적으로 증가시키고, 상기 소프트웨어에서 수신된 캡쳐 명령에 따라 입력되는 비디오 신호를 캡쳐하여 상기 메모리의 영역에 미리 정해진 순서에 따라 저장하는 하드웨어부를 포함하는 영상 전처리 장치를 다른 특징으로 한다.
상기의 다른 기술적 과제를 해결하기 위하여, 본 발명은 효율적으로 영상을 디스플레이하는 영상 후처리 방법에 있어서,
(a) 복수개의 메모리 영역에 순서적으로 번호를 매핑하여 프레임 동기 신호마다 그 번호를 순환적으로 증가시키는 과정;
(b) 프레임 동기 신호에 따라 디스플레이중인 메모리의 영역을 확인하면서 비디오 데이터를 상기 메모리의 영역에 미리 정해진 순서에 따라 저장하는 과정;
(c) 상기 과정에서 상기 메모리 영역에 저장된 비디오 데이터를 순차적으로 디스플레이시키는 과정을 포함하는 영상 후처리 방법을 특징으로 한다.
상기의 다른 기술적 과제를 해결하기 위하여, 본 발명은 효율적으로 영상을 캡쳐하는 영상 전처리 장치에 있어서,
소정 개수의 영역으로 나누어 각각에 번호를 매핑시키는 메모리부;
프레임 동기 신호에 따라서 디스플레이중인 상기 메모리부의 영역과 디코딩될 메모리 영역의 번호를 비교하면서 비디오 데이터의 디스플레이 명령을 발생하는 소프트웨어부;
상기 메모리부의 번호를 프레임 동기 신호마다 순환적으로 증가시키고, 상기 소프트웨어에서 발생된 디스플레이 명령에 따라 상기 메모리에 미리 정해진 순서에 따라 화면에 디스플레이하는 하드웨어부를 포함하는 영상 후처리 장치을 다른 특징으로 한다.
이하 첨부된 도면을 참조로하여 본 발명의 바람직한 실시예를 설명하기로 한다.
도 3은 본 발명에 따른 전처리 시스템의 일 실시예를 보이는 블록도이다.
도 3을 참조하면, 중앙연산처리부(310)는 소프트웨어의 실행을 담당하고 있다. 그 소프트웨어는 레지스터 파일을 통해 하드웨어의 동작을 제어한다.
시스템제어부(320)는 중앙연산처리부(310)의 제어 명령을 실제 하드웨어에 전달한다. 중앙연산처리부(310)에서 레지스터 파일에 동작(operation) 데이터를 라이트하고 하드웨어 모듈에 대한 동작을 명령하면 시스템제어부(320)는 그에 따른 동작을 해석하여 각 하드웨어와 정의된 프로토콜(protocol)에 따라 소프트웨어의 명령을 수행한다.
레지스터 파일제어부(330)는 시스템제어부(320)의 제어 명령과 정의된 프로토콜에 따라 중앙연산처리부(310)에서 수신된 레지스터 파일의 동작을 수행한다. 또한 레지스터 파일제어부(330)는 입력되는 수직 동기 신호(Vertical sync)에 따라 레지스터 파일의 동작을 조절하며, 레지스터 파일의 각각의 비트들을 해석한다.
버퍼제어부(340)는 카메라의 일정한 구간에서 정해진 시간에 입력되는 데이터를 SDRAM과 같은 버퍼에 버퍼링한다.
카메라(350)는 비디오 데이터와 수직 동기 및 수평동기신호(Vsync/Hsync)을 입력한다.
프리프로세서(360)는 입력되는 4:2:2 비디오 데이터를 4:2:0 비디오 데이터로 변환한다. 즉 프리프로세서(360)는 비디오 데이터를 수직 방향(Vertical Direction)으로 1/2 서브 샘플링한다.
제1, 제2, 제3버퍼(370,380,390)는 Y 신호, Cb 신호,Cr 신호를 저장하며, 라이트 엑세스를 수행하기 위하여 입력되는 Y 신호, Cb 신호,Cr 신호를 각각 버퍼링한다. 이때의 버퍼 사이즈는 시스템의 구성에 따라 달라 질 수 있다.
도 4는 캡쳐 순서에 따른 메모리의 구조도이다.
도 4를 참조하면, 하드웨어는 초기화시 메모리의 페이지를 복수개로 나누어 각각에 주소를 설정하며, 소프트웨어에서 캡쳐 명령을 수신하면 미리 정해진 순서에 따라 메모리의 페이지에 자동적으로 영상을 저장한다. 메모리 페이지는 캡쳐 순서에 따라 3개(0, 1, 2)로 정해지나 병렬 처리(Parallel Processing)나 응용에 따라 더 늘어날 수 있다.
도 5의 (a) 내지 (c)는 본 발명에서 제안된 전처리 타이밍도이다.
도 5를 참조하면, (a)는 하드웨어에서 발생되는 수직 동기 신호(V_sync) 또는 프레임 동기 신호의 타이밍도이며, 수직 동기 신호(V_sync)에 따라서 메모리 페 이지(MP)가 "0 →1→2→0 ..." 순으로 증가된다. 메모리 페이지(Memory Page:MP)는 카메라에서 캡쳐를 시작하여 끝낼 때까지 1 수직 동기 신호(V_sync)동안 캡쳐중인 메모리의 영역이다. 이때 하드웨어는 메모리 제어를 위해 소프트웨어에 대해 슬레이브로 동작하게 되며, 이미지 캡쳐 여부를 레지스터에 의해 수신한다.
(b)는 소프트웨어에서 발생되는 제어 타이밍도이며, 소프트웨어에서는 하드웨어의 메모리 페이지를 읽고나서 캡쳐 명령을 준다. 그리고 소프트웨어카운트(sw_cnt)는 인코딩될 메모리 페이지를 나타내는데 이것은 수직동기신호(V_sync)에 따라 하드웨어의 메모리 페이지를 읽은 후 (MP+2)%3으로 계산되어 "0 →1→2→0 ..." 순으로 엎데이트(update)된다. 그 실시예를 (b)의 타이밍도로 설명하면, 현재의 하드웨어의 메모리 페이지를 독출하여 그 페이지가 "1"번째로 확인한 후 캡쳐 명령을 주고 (MP+2)%3 에 해당하는 "0"번째 메모리 페이지를 인코딩하도록한다(sw_cnt = 0). 이어서, 다음 메모리 페이지를 독출하여 그 페이지가 "2"번째로 확인한 후 캡쳐 명령을 주고 (MP+2)%3 에 해당하는 "1"번째 메모리 페이지를 인코딩하도록한다(sw_cnt = 1). 이어서, 소프트웨어가 "1"번째 메모리 페이지를 인코딩한 후 다음 메모리 페이지를 읽었더니 아직도 현재 메모리 페이지"2"의 캡쳐가 끝나지 않았을 경우 다시 이전에 캡쳐되었던 프레임을 다시 사용하지만(sw_cnt = 1), 그러나 이전에 캡쳐 프레임을 다시 사용할지는 개발자의 이슈이다.
(c)는 소프트웨어의 인코딩 타이밍도이다.
소프트웨어는 소프트웨어카운트(sw_cnt)의 계산값에 해당하는 (MP+2)%3의 메 모리의 페이지에 저장된 데이터를 인코딩하도록 제어한다. 만약 소프트웨어가 읽은 메모리 페이지가 아직도 캡쳐중일 때는 동일한 프레임을 다시 인코딩(fr.1 encoding)하도록 하며, 그렇지 않을 경우 캡쳐된 메모리의 페이지를 인코딩(fr.0 encoding 및 fr.2 encoding)하도록한다.
도 6은 본 발명에 따른 전처리 방법을 보이는 흐름도이며, 도 3의 메모리의 구조도와 도 4의 타이밍도를 참조하여 설명한다.
먼저, 시스템의 하드웨어를 초기화한(610과정) 후 인코딩을 시작한다(620과정).
이어서, 소프트웨어가 하드웨어를 참조하여 메모리 페이지(MP)를 읽는다(630과정).
이어서, 소프트웨어가 메모리 페이지(MP)를 확인 후 그 페이지에 캡쳐 명령을 인가한다(640과정).
이어서, 소프트웨어가 인코딩할 메모리 페이지(sw_cnt)를 (MP+2)%3으로 계산한다(650과정).
이어서, 소프트웨어가 상기 계산된 메모리 페이지(sw_cnt)를 인코딩 하도록 한다(660과정).
이어서, 인코딩이 완료되었는가를 판단하여(670과정), 인코딩이 완료되면 전처리 과정을 종료하고, 그렇지 않으면 소프트웨어가 다시 하드웨어의 메모리 페이지를 읽어 전처리 과정을 수행한다.
다른 실시예로 만약 인코딩의 매 단계, 예를 들면 ME/MC, DCT 등의 일부를 하드웨어로 동작하게 하여 병렬 처리(Parallel Processing)할 경우 필요한 메모리의 개수 또는 영역은 늘어나게 된다. 예를 들어, 병렬 처리할 개수를 Np 라고 하면 필요한 메모리 페이지(MP)의 개수는 (Np+2)페이지이다. 여기서는 ME/MC, DCT 2개이므로 4개의 메모리 페이지(MP)가 필요하며 인코딩할 메모리 페이지는 (MP+3)%4이다.
도 7은 입력되는 Y, U, V 데이터의 타이밍도이다.
도 7을 참조하면, 중앙연산처리부(310)는 한 개의 프레임 단위로 인코딩 작업을 지원한다. 따라서 카메라로부터 부터 입력되는 비디오 데이터 Y, Cb, Cr은 하나의 프레임 단위로 캡쳐 기능을 지원한다.
입력되는 비디오 데이터는 수직 동기 신호(Vertical Sync)단위로 1 프레임으로 입력된다. 일실시예로서 본 발명에서 카메라는 CCIR 601 포맷으로 QCIF의 이미지(176 x 144) 순차 스캔(Progressive Scan) 방식이 적용된다. 입력되는 비디오 데이터는 8비트의 Y,U,V 데이타로 시스템에서 13.5 MHz의 클럭(PCLK)을 입력하여 동기된 클럭에 따라 8비트 데이터(DATA[7:0])를 출력하게 된다.
도 8은 프레임 단위로 입력되는 비디오 데이터의 타이밍도이다.
도 8을 참조하면, 입력되는 비디오 데이터(DATA)는 수직동기신호(VSYNC) 최대 초당 60 프레임(frame)까지 입력될 수 있다. 비디오 데이터(DATA)는 인코더의 능력(capacity)에 따라 처리 될 수 있다. 따라서 하드웨어는 중앙연산처리부(310)에 대해 슬레이브(slave)로 동작하여 인코딩 프레임을 선택하게 된다. 또한 하드웨어는 입력되는 데이터의 프레임 구분이 수직동기신호(VSYNC)에 의하여 구분되어지 므로 입력되는 수직동기신호(VSYNC)에 따라 인코딩할 데이터를 선택한다.
도 9는 도 4에 도시된 메모리를 제어하는 타이밍도이다.
도 9를 참조하면, 입력되는 비디오 데이터는 카메라로부터 일정하게 수직동기신호(v_sync)마다 입력되며 중앙연산처리부(310)에서 요구하는 대로 캡쳐된다. 그리고 중앙연산처리부(310)는 레지스터 파일(register file)을 통해 비디오 데이터를 캡쳐한다. 이때 캡쳐 명령어는 상태 레지스터(status register)를 이용하여 레지스터 파일(register file)로 전송되며, 그 상태비트(state[31])가 "1"로 설정되어 있으면 캡쳐된다. 상태 레지스터(status Register)에서 미리 정해진 또 다른 비트들은 도 4에 도시된 바와 같이 현재 하드웨어에서 수행하고 있는 3개의 메모리의 번호(0, 1, 2)를 나타내고 있다. 중앙연산처리부(310)는 하드웨어의 메모리 번호를 읽어 소프트웨어에게 처리해야 할 메모리 영역을 알려준다.
도 9의 메모리 제어 타이밍도를 더 상세하게 설명하면, 중앙연산처리부(310) 에서 캡쳐하고자 하는 프레임에 대하여 상태 레지스터(status register)의 상태비트들(state[31])중 일정비트를 설정하면 하드웨어내부의 내부 레지스터 리드 신호(internal reg_rd)를 "1"로 설정하게된다. 이때 수직동기신호(v_sync)를 받으면 내부 레지스터 리드 신호(internal reg_rd)는 "0"로 변화된다. 그리고 내부 레지스터 리드 신호(internal reg_rd)가 "0"로 설정되고 동시에 상태 레지스터(status register)에 캡쳐 비트가 설정되어 있으면 비디오 데이터를 캡쳐하게 된다. 이어서, 다음 수직동기신호(v_sync)에서 상태 레지스터(status register)에 캡쳐 비트가 설정되어 있지 않으면 캡쳐가 인에이블된다. 결과적으로 매번 수직동기신호(v_sync)에서 상태 레지스터(status register)의 캡쳐 비트(capture bits)를 체크하게 된다. 하드웨어에서 데이터를 캡쳐하게 될 경우 초기에 메모리에 대한 시작 어드레스는 부팅 후 중앙연산처리부(310)에서 저장되며, 다시 어드레스 설정값이 변화되기 전까지 그 시작 어드레스값이 유효하다. 이때 중앙연산처리부(310)는 레지스터를 통해 그 시작 어드레스를 수직 동기 단위로 발생한다. 그리고 메모리의 영역은 개수에 매핑되어 수직 동기 신호(v_sync)마다 데이터 캡쳐를 수행하면 그 개수(H/W cnt)를 순차적으로 증가시킨다("0 →1→2→0 ...").
도 10은 본 발명에 따른 후처리 시스템의 일 실시예를 보이는 블록도이다.
도 10을 참조하면, 소스 코덱부(도시안됨)에서 디코딩이 끝난 데이터는 Y버퍼(1020), Cb 버퍼(1022)Cr 버퍼(1024), OSD 버퍼(1026)에 Y, Cb, Cr 의 순서대로 저장되고 표시부(1070)에서 발생하는 수직, 수평 동기 신호에 따라 포스트프로세서(1050)로 전달된다. 포스트프로세서(1050)는 입력되는 4:2:0 데이터를 4:2:2 데이터로 변환하며, 또한 4:2:2 포맷의 영상 데이터를 4:4:4 포맷의 RGB 데이터로 변환하여 표시부(1070)로 전송한다. 또한 포스트프로세서(1050)는 DMA제어기(도시안됨)를 이용하여 OSD 버퍼(1026)에 저장되어 있는 OSD 데이터를 엑세스한다.
시스템제어부(1040)는 중앙연산처리부(1060)의 제어 명령을 하드웨어에 전달한다. 중앙연산처리부(1060)에서 레지스터 파일에 동작(operation) 데이터를 라이트하고 하드웨어 모듈에 대한 동작을 명령하면 시스템제어부(1030)는 그에 따른 동 작을 해석하여 각 하드웨어와 정의된 프로토콜(protocol)에 따라 소프트웨어의 명령을 수행한다. 중앙연산처리부(1060)는 레지스터 데이터를 통해 디스플레이 명령을 전달하여 하드웨어를 제어하게 된다. DMA 레지스터(1030)는 시스템제어부(1040)의 제어 명령과 정의된 프로토콜에 따라 중앙연산처리부(1060)에서 수신된 레지스터 데이터의 동작을 수행한다.
도 11은 디스플레이에 따른 메모리의 구조도이다.
도 11을 참조하면, 하드웨어는 초기화시 메모리 페이지를 복수개로 나누어 각각에 번호를 설정하고, 소프트웨어로 부터 디스플레이 명령을 수신하면 미리 정해진 순서에 따라 자동적으로 디스플레이된 영상이 저장된다. 메모리 페이지는 3개(0, 1, 2)로 정해지나 병렬 처리(Parallel Processing)나 응용에 따라 더 늘어날 수 있다.
도 12의 (a) 내지 (c)는 본 발명에서 제안된 후처리 타이밍도이다.
도 12를 참조하면, (a)는 하드웨어에서 발생되는 수직 동기 신호(V_sync) 또는 프레임 동기 신호의 타이밍도이며, 수직 동기 신호(V_sync)에 따라서 메모리의 페이지(MP)가 "2→0 →1→2→0 ..."순으로 엎데이트된다. 메모리 페이지(Memory Page:MP)는 LCD에서 디스플레이를 시작하여 끝낼 때까지 1 수직 동기 신호(V_sync)동안 디스플레이중인 핑퐁 메모리의 영역이다. 이때 하드웨어는 메모리 제어를 위해 소프트웨어에 대해 슬레이브로 동작하게 되며, 이미지 디스플레이 여부를 레지스터에 의해 수신한다.
(b)는 소프트웨어에서 발생되는 디스플레이 제어 타이밍도이며, 소프트웨어 에서는 (a)와 같이 디스플레이중인 메모리 페이지를 읽고나서 디스플레이 명령을 준다. 소프트웨어카운트(sw_cnt)는 디코딩할 영역의 메모리 페이지를 나타내는데 이것은 수직 동기신호(V_sync)에 따라 디스플레이중인 하드웨어의 메모리 페이지를 읽고 나서 "0 →1→2→0 ..." 순으로 증가된다. 만약 디스플레이 명령이 들어오지 않을 경우 가장 마지막으로 표시했던 메모리 페이지를 그대로 유지하게된다. 그 실시예를 (b)의 타이밍도로 설명하면, 디스플레이중인 "0"번째 메모리 페이지를 읽고 나서 그 페이지가 "1"이 아님을 확인하고 "2"번째 메모리의 페이지를 디코딩 하도록 한다(sw_cnt = 2). 이어서, 디스플레이중인 "1"번째 메모리 페이지를 읽고 나서 그 페이지가 "2"가 아님을 확인하고 "0"번째의 메모리의 페이지를 디코딩 하도록 한다(sw_cnt = 0). 이어서, 소프트웨어가 디스플레이중인 메모리 페이지를 읽었더니 아직도 "1" 번째 메모리 페이지이면 "2" 번째 메모리 페이지가 될 때까지 기다린다(sw_cnt = 1). 이어서, 소프트웨어가 디스플레이중인 "2"번째 메모리 페이지를 읽었더니 그 페이지가 "1"이 아님을 확인하고 "1"번째의 메모리 페이지를 디코딩 하도록 한다(sw_cnt = 1).
(c)는 소프트웨어의 디코딩 타이밍도이다.
소프트웨어는 소프트웨어카운트(sw_cnt)에 해당하는 메모리의 페이지를 디코딩하도록 제어한다. 즉, 소프트웨어는 디스플레이중인 메모리 페이지와 디코딩될 메모리 페이지와 같다고 판단할 경우 디코딩을 하지 않고 대기하도록 하며, 그렇지 않으면 해당 메모리 페이지를 디코딩(fr.0, fr.1, fr.2 decoding)하도록 한다.
도 13는 본 발명에 따른 후처리 방법을 보이는 흐름도이며, 도 11의 메모리 의 구조도와 도 12의 타이밍도를 참조하여 설명한다.
먼저, 시스템의 하드웨어를 초기화한(1310과정) 후 디코딩을 시작한다(1320과정).
이어서, 소프트웨어가 디스플레이중인 메모리 페이지(MP)를 읽는다(1330과정).
이어서, 소프트웨어는 디스플레이중인 메모리 페이지(MP)값과 증가된 소프트웨어의 카운트(sw_cnt+1)를 비교한다(1340, 1350과정).
이때 소프트웨어는 메모리 페이지(MP)와 증가된 소프트웨어 카운트(sw_cnt+1)가 같으면 디스플레이중인 메모리 페이지(MP)가 증가될 때 까지 디코딩하지 않고 기다린다(1360과정).
또한 메모리 페이지(MP)와 증가된 소프트웨어 카운트(sw_cnt+1)가 같지 않으면 소프트웨어 카운트(sw_cnt)을 "1"증가시키고(1372과정) 그 카운트(sw_cnt)에 해당하는 메모리 페이지를 디코딩하도록한다(1374과정)
이어서, 소프트웨어 카운트(sw_cnt)에 해당되는 메모리 페이지를 디스플레이할 순서가 되면 해당 메모리 페이지를 디스플레이시킨다(1376과정). 이때 메모리 페이지의 데이터는 1 동기 신호내에 적어도 2번 이상의 디스플레이 요청이 있을 시 디스플레이된다.
이어서, 디코딩이 완료되었는가를 판단하여(1380과정), 디코딩이 완료되면 후처리 과정을 종료하고, 그렇지 않으면 다시 소프트웨어가 하드웨어의 메모리 페이지를 읽어 상기 후처리 과정을 수행한다.
도 14는 메모리를 제어하는 타이밍도이다.
메인 메모리(SDRAM)와의 디코딩을 위한 제어는 N개의 프레임 메모리를 이용한다. 결국 버스로부터 읽혀진 데이터는 후처리(post processing)를 위해 N 개의 메모리의 한 영역에 저장된다. 소프트웨어는 디코딩된 비디오 데이터를 저장할 메모리의 영역을 선택한다. 중앙연산처리부는 현재 하드웨어에서 디스플레이 하기 위하여 리드중인 메모리 상태를 모니터링한다. 소프트웨어가 하드웨어에서 디스플레이중인 메모리 영역에 데이터를 엎데이트할 경우 이미지 분할 현상이 나타나게 된다.
후처리 작업도 전처리 작업과 마찬가지로 수직 동기 신호(Vsync)에 따라 수행된다. 소프트웨어는 타이밍 정보가 없으므로 디코딩이 완료 된 순간에 메모리에 데이터를 저장하고자 할 때 N 개의 메모리 영역을 선택하게 된다. 이때 소프트웨어는 레지스터 데이터의 상태 레지스터(status Register)를 읽어 메모리의 영역을 결정하며, 디스플레이할 메모리의 영역 정보도 레지스터 데이터를 통하여 하드웨어에 전달한다. 이때 사용되는 레지스터 데이터는 상태 레지스터중에서 소정의 비트 몇개를 사용한다. 이는 하드웨어에서 실제 디스플레이하고 있는 데이터의 영역을 수자로 표현하여 중앙연산처리부로 전달하게 된다. 이때 수자는 부팅후 N 프레임의 초기 시작 어드레스로 설정된 후 다음 엎데이트가 발생하지 않으면 계속 유효하다. 이때 중앙연산처리부는 레지스터를 통해 그 시작 어드레스를 수직 동기 단위로 발생한다. 그리고 레지스터 데이터에서 Y1 시작 어드레스, Y2 시작 어드레스, Y3 시작 어드레스가 도 11의 메모리에서 0, 1, 2로 매핑된다.
도 14에 나타낸 바와 같이 소프트웨어로 부터 입력되는 상태 레지스터(status_reg)의 2 비트를 이용하여 소프트웨어 카운트(sw_cnt)와 하드웨어 카운트(hw_cnt)에 해당하는 두개의 카운트가 동작하게 된다. 중앙연산처리부(1060)는 소프트웨어 카운트(sw_cnt)를 동작시킨다. 디코딩이 완료되면 소프트웨어는 하드웨어 카운트(hw_cnt)를 리드하게 된다. 이때 소프트웨어 카운트(sw_cnt)는 하드웨어 카운트(hw_cnt)에서 사용하고 있지 않은 수자를 순차적으로 하드웨어에 전달한다. 그리고 하드웨어에서는 수자를 리니어(linear)하게 증가시켜 소프트웨어에 전달하게 된다. 하드웨어에서는 소프트웨어에서 카운트된 값이 전달되지 않으면 이전의 어드레스에서 데이터를 리드하여 이미지의 홀딩 현상을 초래한다. 여유 버퍼를 한 개 더 추가하면 소프트웨어에서 디코딩 시간이 빠를 경우 1개의 수직 동기(Vsync)구간에 2 프레임 까지 허용될 수 있다. 처음 시작할때는 소프트웨어 카운트(sw_cnt)와 하드웨어 카운트(hw_cnt)가 2의 차이로 유지되며, 1 수직동기구간에 2 프레임(frame)이 디코딩되면 소프트웨어는 다음 프레임 영역에 저장하므로 두개의 카운터의 차이가 1로 줄어 든다. 이러한 경우가 2번 발생하게 될 경우 소프트웨에서 디코딩한 프레임은 메모리에 저장되지 못한다.
본 발명에서는 Nb 개의 버퍼용 메모리 페이지를 가질 수 있는데 버퍼용 메모리 페이지가 1개 늘어날 때마다(1+Nb) 디코딩시 소요되는 시간이 1 프레임씩 딜레이된다. 그러나 도 12의 (b)에서 처럼 메모리 페이지가 증가될 때 까지 기다리는 경우(sw_cnt=1) 1 수직 동기 신호(V_sync)가 발생할 때 1 프레임의 버퍼가 생기므로 디코딩 작업의 대기 시간이 감소된다. 만약 1 수직 동기 신호(V_sync)내에 (1+Nb)개 메모리 페이지를 초과하는 디스플레이 요청이 발생하면 소프트웨어는 요청이 없는 수직 동기 신호(V_sync)가 발생할 때 까지 기다린다. 예를 들어, Nb 개의 여유 버퍼가 생기면 총 (Nb + 3)개의 메모리 페이지가 생기게된다. 이때 Nb는 미리 디코더와 디스플레이 장치간에 서로 약속이 되어 있어야 한다. 도 11에 도시된 메모리의 페이지는 3개를 구비하나 이 메모리 페이지 개수는 버퍼의 개수에 따라 더 늘어날 수 있다.
디코더의 측면에서 살펴보면, 1 수직 동기 신호(V_sync) 내에 최대 (1+Nb)개 메모리 페이지에 대한 디스플레이 요청을 할 수 있는데 만약 Nb 개의 버퍼용 메모리 페이지(MP)가 풀(full) 상태라면 1 수직 동기 신호(V_sync)에 1 개의 디스플레이 요청만 할 수 있다. 만약 디코더는 요구되는 디스플레이 작업을 즉시 구동부에 요청할 수 없다면 요청가능한 상태가 될 때까지 디코딩 작업을 늦춘다. 참조가 되는 모든 디스플레이용 구동부의 상태는 하드웨어의 메모리 페이지를 보고 판별한다.
상술한 바와 같이 본 발명에 의하면, 종래의 폴링이나 인터럽트 방식처럼 대기 또는 인터럽트없이 동작하므로 속도가 빠르고 안정적이다. 또한 비디오 인코더의 요청에 의해 언제나 캡쳐된 화면을 제공하므로 사람 눈에 자연스럽게 보인다. 또한 캡쳐와 관련된 대부분의 정보를 초기화 때 미리 설정한 후에 캡쳐 명령만 주게 되므로 제어를 간단하게 수행할 수있다.
그리고 비디오 디코더의 요청에 의해 언제나 디스플레이된 화면을 제공하면서도 최소의 메모리만으로도 잃어버리는 화면이 적으므로 사람 눈에 자연스럽게 보인다. 또한 대부분의 디스플레이와 관련된 대부분의 정보를 초기화 때 미리 설정한 후에 디스플레이 명령만 주게 되므로 제어를 간단하게 수행하며, 실험적으로 1 개의 버퍼용 메모리 페이지로 디코딩 프로세싱의 딜레이없이 최대 30장/초로 디스플레이가 가능하다.

Claims (30)

  1. 효율적으로 영상을 캡쳐하는 영상 전처리 방법에 있어서,
    (a) 복수개의 저장 메모리 영역에 순서적으로 번호를 매핑하여 프레임 동기 신호마다 그 번호를 순환적으로 증가시키는 과정;
    (b) 프레임 동기 신호에 따라 상기 저장 메모리 영역을 확인하면서 입력되는 비디오 데이터를 캡쳐하는 과정;
    (c) 상기 캡쳐된 비디오 데이터를 상기 저장 메모리의 영역에 미리 정해진 순서에 따라 저장하는 과정을 포함하는 영상 전처리 방법.
  2. 제1항에 있어서, 상기 비디오 데이터는 소정의 단위로 캡쳐하는 것임을 특징으로 하는 영상 전처리 방법.
  3. 제2항에 있어서, 상기 비디오 데이터는 레지스터를 통해 프레임 동기 단위 또는 몇 개의 프레임 동기 단위로 수신되는 캡쳐명령에 의해 캡쳐되는 것임을 특징으로 하는 영상 전처리 방법.
  4. 삭제
  5. 제1항에 있어서, 상기 캡쳐 데이터를 저장하는 메모리의 시작 번지는 부팅 후에 초기 설정된 메모리의 영역의 번지임을 특징으로 하는 영상 전처리 방법.
  6. 제5항에 있어서, 상기 초기에 설정된 메모리의 시작 번지는 다음의 갱신 시작 번지를 인가받을 때 까지 유효한 것임을 특징으로 하는 영상 전처리 방법.
  7. 제5항에 있어서, 상기 메모리의 시작 번지는 프레임 동기 단위 또는 몇 개의 프레임 동기 단위로 적용되는 것임을 특징으로 하는 영상 전처리 방법.
  8. 제1항에 있어서, 상기 캡쳐된 비디오 데이터가 저장된 메모리의 영역은 소정의 단위로 할당하여 그에 상응하는 메모리 영역의 개수를 번호로 설정하는 것임을 특징으로 하는 영상 전처리 방법.
  9. 영상 전처리 방법에 있어서,
    (a) 복수개의 저장 메모리 영역에 순서적으로 번호를 설정하는 과정;
    (b) 프레임 동기 신호에 따라 상기 메모리 영역의 번호를 순환적으로 확인하면서 그 메모리 영역에 캡쳐 명령을 발생하고 인코딩될 메모리의 영역을 계산하는 과정;
    (c) 상기 과정에서 계산된 메모리 영역의 데이터를 인코딩하는 과정을 포함하는 영상 전처리 방법.
  10. 제9항에 있어서, 상기 인코딩 완료후 확인된 메모리 영역이 인코딩될 메모리 영역과 같으면 이전 프레임을 다시 인코딩하는 것임을 특징으로 하는 영상 전처리 방법.
  11. 제9항에 있어서, 상기 메모리의 개수에 따라 인코딩될 메모리 영역은 (MP+k)%N, k=N-1, N은 영역의 개수로 계산되는 것임을 특징으로 하는 영상 전처리 방법.
  12. 제9항에 있어서, 병렬 캡쳐 처리에 필요한 메모리가 NP 라면 상기 메모리 영역의 개수는 (Np+2)이고 그 개수에 따라 인코딩될 메모리의 영역은 (MP+k)%N, k=N-1, N은 영역의 개수로 계산되는 것임을 특징으로 하는 영상 전처리 방법.
  13. 효율적으로 영상을 캡쳐하는 영상 전처리 장치에 있어서,
    소정 개수의 영역으로 나누어 각각에 번호를 매핑시키는 메모리부;
    프레임 동기 신호가 발생할 때 마다 상기 메모리부에서 사용중인 영역을 확인한 후 다음번에 사용할 메모리의 영역에 캡쳐 명령을 발생하는 소프트웨어부;
    상기 메모리부의 번호를 프레임 동기 신호마다 순환적으로 증가시키고, 상기 소프트웨어부에서 수신된 캡쳐 명령에 따라 입력되는 비디오 신호를 캡쳐하여 상기 메모리의 영역에 미리 정해진 순서에 따라 저장하는 하드웨어부를 포함하는 영상 전처리 장치.
  14. 제13항에 있어서, 상기 소프트웨어부는 레지스터 파일에 캡쳐 명령을 설정하는 수단임을 특징으로 하는 영상 전처리 장치.
  15. 효율적으로 영상을 디스플레이하는 영상 후처리 방법에 있어서,
    (a) 복수개의 메모리 영역에 순서적으로 번호를 매핑하여 프레임 동기 신호마다 그 번호를 순환적으로 증가시키는 과정;
    (b) 프레임 동기 신호에 따라 디스플레이중인 메모리의 영역을 확인하면서 비디오 데이터를 상기 메모리의 영역에 미리 정해진 순서에 따라 저장하는 과정;
    (c) 상기 과정에서 상기 메모리 영역에 저장된 비디오 데이터를 순차적으로 디스플레이시키는 과정을 포함하는 영상 후처리 방법.
  16. 제15항에 있어서, 상기 비디오 데이터는 소정의 단위로 디스플레이되는 것임을 특징으로 하는 영상 후처리 방법.
  17. 제15항에 있어서, 상기 비디오 데이터는 레지스터의 소정 비트들을 통해 프레임 동기 단위로 수신되는 디스플레이명령에 의해 디스플레이되는 것임을 특징으로 하는 영상 후처리 방법.
  18. 제15항에 있어서, 상기 비디오 데이터를 디스플레이 시킨 후 디스플레이중인 메모리 영역의 위치를 전송하는 과정을 더 포함하는 것을 특징으로 하는 영상 후처리 방법.
  19. 제15항에 있어서, 상기 디스플레이할 메모리는 부팅 후에 초기 설정된 메모리의 영역을 시작 번지로 설정하는 것임을 특징으로 하는 영상 후처리 방법.
  20. 제19항에 있어서, 상기 초기에 설정된 메모리의 시작 번지는 다음의 갱신 시작 번지를 인가받을 때 까지 유효한 것임을 특징으로 하는 영상 후처리 방법.
  21. 제19항에 있어서, 상기 메모리의 시작 번지는 프레임 동기 단위로 적용되는 것임을 특징으로 하는 영상 후처리 방법.
  22. 제15항에 있어서, 상기 비디오 데이터가 저장될 메모리의 영역은 소정의 단위로 할당하여 그에 상응하는 메모리 영역의 개수를 번호로 대응하는 것임을 특징으로 하는 영상 후처리 방법.
  23. 디스플레이를 위한 후처리 방법에 있어서,
    (a) 복수개의 메모리 영역에 디스플레이할 순서로 번호를 설정하는 과정;
    (b) 프레임 동기 신호에 따라 상기 디스플레이 메모리 영역의 번호를 독출한 후 디코딩할 메모리 영역을 순서적으로 증가시키는 과정;
    (c) 상기 과정에서 해당 메모리의 영역을 디코딩하고 순서가 된 상기 메모리 영역을 디스플레이하는 과정을 특징으로 하는 영상 후처리 방법.
  24. 제23항에 있어서, 상기 디스플레이 메모리의 영역과 디코딩 메모리 영역이 다르면 다음 화면을 디스플레이하는 것임을 특징으로 하는 영상 후처리 방법.
  25. 제24항에 있어서, 상기 다음 화면은 1 동기 신호내에 적어도 2번 이상의 디스플레이 요청이 있을 시 디스플레이시키는 과정임을 특징으로 하는 영상 후처리 방법.
  26. 제25항에 있어서, 상기 디스플레이 메모리 영역의 개수가 N개라면 1 동기 신 호내에 (1+N)개까지의 상기 디스플레이를 요청하는 것임을 특징으로 하는 영상 후처리 방법.
  27. 제25항 또는 26항에 있어서, 상기 1 동기 신호내에 (1+N)개를 초과하는 디스플레이 요청시 요청이 없는 동기 신호가 입력될 때 까지 대기하는 과정임을 특징으로 하는 영상 후처리 방법.
  28. 제23항에 있어서, 상기 디스플레이 메모리 영역과 디코딩 메모리 영역이 같으면 다음번의 메모리 영역을 기다리는 것임을 특징으로 하는 영상 후처리 방법.
  29. 효율적으로 영상을 캡쳐하는 영상 후처리 장치에 있어서,
    소정 개수의 영역으로 나누어 각각에 번호를 매핑시키는 메모리부;
    프레임 동기 신호에 따라서 디스플레이중인 상기 메모리부의 영역과 디코딩될 메모리 영역의 번호를 비교하면서 비디오 데이터의 디스플레이 명령을 발생하는 소프트웨어부;
    상기 메모리부의 번호를 프레임 동기 신호마다 순환적으로 증가시키고, 상기 소프트웨어부에서 발생된 디스플레이 명령에 따라 상기 메모리에 미리 정해진 순서에 따라 화면에 디스플레이하는 하드웨어부를 포함하는 영상 후처리 장치.
  30. 제29항에 있어서, 상기 소프트웨어부는 레지스터 파일에 디스플레이 명령을 설정하는 수단임을 특징으로 하는 영상 후처리 장치.
KR20010021122A 2001-04-19 2001-04-19 효율적인 영상 처리를 위한 전/후처리 방법 및 그를적용한 전/후 처리 시스템 KR100750096B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR20010021122A KR100750096B1 (ko) 2001-04-19 2001-04-19 효율적인 영상 처리를 위한 전/후처리 방법 및 그를적용한 전/후 처리 시스템
EP20020252694 EP1251702A3 (en) 2001-04-19 2002-04-16 Video encoding and decoding
JP2002115244A JP3950003B2 (ja) 2001-04-19 2002-04-17 効率的な映像処理のための前後処理方法及びそれを適用した前後処理システム
CNB021161305A CN1190960C (zh) 2001-04-19 2002-04-19 处理视频的视频预处理/后处理方法及其设备
US10/125,549 US20020154889A1 (en) 2001-04-19 2002-04-19 Video pre-processing/post-processing method for processing video efficiently and pre-processing/post-processing apparatus using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20010021122A KR100750096B1 (ko) 2001-04-19 2001-04-19 효율적인 영상 처리를 위한 전/후처리 방법 및 그를적용한 전/후 처리 시스템

Publications (2)

Publication Number Publication Date
KR20020081761A KR20020081761A (ko) 2002-10-30
KR100750096B1 true KR100750096B1 (ko) 2007-08-21

Family

ID=19708471

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20010021122A KR100750096B1 (ko) 2001-04-19 2001-04-19 효율적인 영상 처리를 위한 전/후처리 방법 및 그를적용한 전/후 처리 시스템

Country Status (5)

Country Link
US (1) US20020154889A1 (ko)
EP (1) EP1251702A3 (ko)
JP (1) JP3950003B2 (ko)
KR (1) KR100750096B1 (ko)
CN (1) CN1190960C (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9897407B2 (en) 2014-06-18 2018-02-20 Centinel Shield, Llc Firearm-mounted camera device with networked control and administration system and method

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100491717B1 (ko) * 2002-09-13 2005-05-27 주식회사 알티캐스트 디지털 텔레비젼상에서 동영상 캡쳐를 이용한 이미지앨범의 제작 시스템 및 그 방법
US20050134877A1 (en) * 2003-12-17 2005-06-23 Murata Kikai Kabushiki Kaisha Color image processing device and color image processing method
US8311088B2 (en) 2005-02-07 2012-11-13 Broadcom Corporation Method and system for image processing in a microprocessor for portable video communication devices
US8311091B1 (en) * 2005-06-03 2012-11-13 Visualon, Inc. Cache optimization for video codecs and video filters or color converters
KR20120058763A (ko) * 2010-11-30 2012-06-08 삼성전자주식회사 영상 장치에서 영상 데이터를 송신하기 위한 장치 및 방법
EP2635025B1 (en) * 2012-02-29 2015-04-08 Advanced Digital Broadcast S.A. Video processing method and video appliance implementing the method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0269844A (ja) * 1988-09-06 1990-03-08 Toshiba Corp メモリのページ切換方式
JPH05158783A (ja) * 1991-12-11 1993-06-25 Fujitsu Ltd メモリブロック制御方式
JPH09319350A (ja) * 1996-05-29 1997-12-12 Meidensha Corp 映像データ表示方式
KR19980054702A (ko) * 1996-12-27 1998-09-25 구자홍 디지탈 스틸 카메라의 필드 구분 기록 제어장치
JPH10320272A (ja) * 1996-12-11 1998-12-04 Ncr Internatl Inc 多重プロセッサを有するコンピュータ・システム及びそのためのメモリ・ページ位置制御方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2703535A1 (fr) * 1993-03-31 1994-10-07 Philips Electronique Lab Procédé et dispositif pour décoder des images comprimées.
JPH0799628A (ja) * 1993-09-28 1995-04-11 Hitachi Ltd 撮像装置
EP0651391A3 (en) * 1993-10-29 1997-02-05 Tokyo Shibaura Electric Co Threaded fastener.
JP3535297B2 (ja) * 1996-01-26 2004-06-07 ローム株式会社 画像データ復号方法およびこの方法を用いた画像データ復号装置
GB9704027D0 (en) * 1997-02-26 1997-04-16 Discovision Ass Memory manager for mpeg decoder
US6012109A (en) 1997-09-09 2000-01-04 National Instruments Corporation Video capture device with adjustable frame rate based on available bus bandwidth
JPH11339006A (ja) * 1998-05-25 1999-12-10 Hitachi Computer Peripherals Co Ltd 画像キャプチャリング装置
US6233389B1 (en) * 1998-07-30 2001-05-15 Tivo, Inc. Multimedia time warping system
ATE259052T1 (de) * 1998-09-09 2004-02-15 Mitsubishi Electric Corp Videorecorder für eine zielwaffe
JP4486755B2 (ja) * 1998-12-23 2010-06-23 ゾラン コーポレイション Mpegビデオ復号・表示システムのためのビデオメモリ管理
JP2001101396A (ja) * 1999-09-30 2001-04-13 Toshiba Corp 画像歪み補正処理装置および方法、並びに画像歪み補正処理を行うプログラムを格納した媒体
KR100561329B1 (ko) * 1999-09-30 2006-03-16 마쯔시다덴기산교 가부시키가이샤 정보 기록 매체 및 시스템 제어기
DE60216523T2 (de) 2002-06-19 2007-10-04 Centro de Investigacion en Alimentacion y Desarrollo, A.C., Hermosillo Herstellung und verwendung von mit verzweigten aminosäuren angereicherten sojaproteinhydrolysaten

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0269844A (ja) * 1988-09-06 1990-03-08 Toshiba Corp メモリのページ切換方式
JPH05158783A (ja) * 1991-12-11 1993-06-25 Fujitsu Ltd メモリブロック制御方式
JPH09319350A (ja) * 1996-05-29 1997-12-12 Meidensha Corp 映像データ表示方式
JPH10320272A (ja) * 1996-12-11 1998-12-04 Ncr Internatl Inc 多重プロセッサを有するコンピュータ・システム及びそのためのメモリ・ページ位置制御方法
KR19980054702A (ko) * 1996-12-27 1998-09-25 구자홍 디지탈 스틸 카메라의 필드 구분 기록 제어장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9897407B2 (en) 2014-06-18 2018-02-20 Centinel Shield, Llc Firearm-mounted camera device with networked control and administration system and method

Also Published As

Publication number Publication date
EP1251702A3 (en) 2005-03-30
CN1190960C (zh) 2005-02-23
KR20020081761A (ko) 2002-10-30
EP1251702A2 (en) 2002-10-23
JP2003046945A (ja) 2003-02-14
US20020154889A1 (en) 2002-10-24
JP3950003B2 (ja) 2007-07-25
CN1381990A (zh) 2002-11-27

Similar Documents

Publication Publication Date Title
AU685098B2 (en) Video peripheral for a computer
JP4383853B2 (ja) 時間アロケータを有するグラフィックレンダリングエンジンを用いる装置、方法及びシステム
US8259123B2 (en) Image processing apparatus
JPH10116064A (ja) コンピュータシステムおよびこのシステムにおけるビデオソース切り替え方法
US6006020A (en) Video peripheral circuitry exercising bus master control over a bus of a host computer
KR100750096B1 (ko) 효율적인 영상 처리를 위한 전/후처리 방법 및 그를적용한 전/후 처리 시스템
EP3977439A1 (en) Multimedia system with optimized performance
US20170371564A1 (en) Method and apparatus for memory efficiency improvement by providing burst memory access control
US7751687B2 (en) Data processing apparatus, data processing method, data processing system, program, and storage medium
CN116635929A (zh) 在多显示器系统上执行异步存储器时钟改变
US8878747B2 (en) Display controlling apparatus and image processing apparatus
JP3258300B2 (ja) Dma転送装置および画像復号装置
US6104876A (en) PCI bus master retry fixup
US20060274152A1 (en) Method and apparatus for determining the status of frame data transmission from an imaging device
US8279207B2 (en) Information processing apparatus, information processing method, and program
JP2000029456A (ja) ディスプレイ描画・表示方法およびディスプレイ装置
JP2009100206A (ja) 画像符号化データ復号化装置
US12063407B2 (en) Systems, methods, and devices for buffer handshake in video streaming
JP2005122119A (ja) Mpuとビデオコーデックとで構成されるシステムにおけるビデオインタフェース装置
JPH10248066A (ja) 画像データ復号装置および画像データ復号方法
JP2002304368A (ja) データ処理装置及びその装置におけるアクセス調停方法
WO2023136984A1 (en) Dpu driven adaptive sync for command mode panels
JPH03114096A (ja) 画像復号化装置
JPH08147479A (ja) 画像出力装置並びに画像復号化装置
JPH08161462A (ja) 画像処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120730

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130730

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140730

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150730

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee