KR101499124B1 - 공유 메모리를 이용한 영상 처리 방법 및 장치 - Google Patents

공유 메모리를 이용한 영상 처리 방법 및 장치 Download PDF

Info

Publication number
KR101499124B1
KR101499124B1 KR1020130008256A KR20130008256A KR101499124B1 KR 101499124 B1 KR101499124 B1 KR 101499124B1 KR 1020130008256 A KR1020130008256 A KR 1020130008256A KR 20130008256 A KR20130008256 A KR 20130008256A KR 101499124 B1 KR101499124 B1 KR 101499124B1
Authority
KR
South Korea
Prior art keywords
block
image processing
memory
sobel
pixel
Prior art date
Application number
KR1020130008256A
Other languages
English (en)
Other versions
KR20140095359A (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 KR1020130008256A priority Critical patent/KR101499124B1/ko
Publication of KR20140095359A publication Critical patent/KR20140095359A/ko
Application granted granted Critical
Publication of KR101499124B1 publication Critical patent/KR101499124B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • 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
    • 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/10Segmentation; Edge detection
    • G06T7/13Edge detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

공유 메모리를 이용한 영상 처리 방법 및 장치가 개시되어 있다. 영상의 에지를 산출하는 방법은 영상 처리 대상 블록에 포함된 픽셀 정보와 상기 영상 처리 대상 블록의 주변 픽셀 정보를 제1 메모리로 복사하는 단계, 영상 처리 대상 블록의 픽셀 정보와 상기 주변 픽셀 정보를 기초로 에지 산출 연산을 수행하는 단계와 에지 산출 연산을 수행한 결과를 제2 메모리로 복사하여 영상 처리 대상 블록의 에지 정보를 판단하는 단계를 포함할 수 있다. 따라서, 불필요하게 반복적으로 메모리 영역에 접근하는 횟수가 줄어들어 영상 처리 속도가 향상될 수 있다

Description

공유 메모리를 이용한 영상 처리 방법 및 장치{METHOD AND APPARRATUS OF IMAGE PROCESSING USING SHARED MEMORY}
본 발명은 영상 처리 방법 및 장치에 관한 것으로 더욱 상세하게는 공유 메모리를 이용한 영상 처리 방법 및 장치에 관한 것이다.
2000년대 이후 단일 코어가 아닌 다중 코어를 장착한 CPU(central processor unit)와 그래픽 처리를 위해 다수 코어를 장착한 그래픽 카드가 보편화 되었다. 그 중에서 그래픽 카드는 단순히 그래픽 처리만이 아닌 다수 코어를 범용적으로 활용하는 GPGPU(general purpose graphic processor unit)가 등장하면서 영상 처리를 수행함에 있어 병렬 처리 기법이 더욱 주목을 받고 있다.
CPU가 컴퓨터에서의 모든 명령어를 처리하는 핵심 소자라고 한다면, GPU(graphic processing unit)는 컴퓨터 그래픽만을 전문으로 처리하는 연산 장치를 뜻한다. GPU는 여러 개의 코어를 바탕으로 병렬 처리에 특화되었기 때문에 GPU의 연산 능력은 CPU와 비교하여 성능적인 측면에서 상당히 효율적이다. GPU는 다수의 코어를 제어하기 위해 SIMD(Single Instruction and Multiple Data) 아키텍쳐를 사용한다.
GPU가 다수의 코어 바탕의 고속 행렬계산이 가능하다는 점을 이용하여 기존의 3D 계산만이 아닌, 과학, 분자 시뮬레이션, 암호 분야에서도 활발히 활용되고 있다. 하지만, 기존의 GPU를 이용한 병렬 처리 기법의 경우 그래픽스 파이프라인 상에서 이루어져야 하기 때문에 사용자들이 GPU를 이용한 파이프라인을 이해해야 효율적인 프로그래밍이 가능하다는 단점이 있었다. 이를 위해서 그래픽스 전문 생산업체인 NVIDIA에서는 2007년 2월 GPU를 이용하여 범용적인 프로그램을 개발할 수 있도록 프로그래밍언어, 컴파일러, 디버거, 라이브러리, 프로파일러를 한데 묶어 통합 개발 환경 'CUDA'를 발표하였다.
CUDA API는 C/C++ 기반으로 이루어져 있기 때문에 기존의 C/C++ 사용자들도 쉽게 병렬 처리 환경을 제공한다는 장점이 있다.
CUDA는 6가지 메모리 구조(전역 메모리, 공유 메모리, 상수 메모리, 텍스쳐 메모리, 로컬 메모리, 레지스터)를 제공하고 있으며, 메모리의 종류에 따라 접근 속도 및 용량이 제한되어 있기 때문에 병렬처리 구현 시 알고리즘에 따른 메모리 설계가 요구된다. 더불어 CPU 기반의 프로그램을 GPU 기반의 프로그램으로 단순히 변환한다고 하여 성능상의 이점을 살릴 수는 없다. 메모리 구조에 따른 성능과 용량의 한계, 병렬 프로그램을 사용함에 필요한 동기화 기법, 지연 감춤과 같은 고려해야 할 점이 존재하기 때문이다.
본 발명의 목적은 공유 메모리를 이용한 영상의 병렬 처리 방법을 제공하는 것이다.
또한, 본 발명의 또 다른 목적은 공유 메모리를 이용한 영상의 병렬 처리 방법을 수행하는 장치를 제공하는 것이다.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 영상의 에지를 산출하는 방법은 영상 처리 대상 블록에 포함된 픽셀 정보와 상기 영상 처리 대상 블록의 주변 픽셀 정보를 제1 메모리로 복사하는 단계, 상기 영상 처리 대상 블록의 픽셀 정보와 상기 주변 픽셀 정보를 기초로 에지 산출 연산을 수행하는 단계와 상기 에지 산출 연산을 수행한 결과를 제2 메모리로 복사하여 상기 영상 처리 대상 블록의 에지 정보를 판단하는 단계를 포함할 수 있다. 상기 제1 메모리는 전역 메모리이고, 상기 제2 메모리는 공유 메모리일 수 있다. 상기 에지 산출 연산은 소벨 마스크(sobel mask)를 사용한 소벨 연산(sobel)일 수 있다. 상기 영상 처리 대상 블록의 픽셀 정보와 상기 주변 픽셀 정보를 기초로 에지 산출 연산을 수행하는 단계는 영상 처리 대상 블록에 포함된 픽셀이 픽쳐의 최외각 픽셀인지 여부를 판단하는 단계와 상기 영상 처리 대상 블록에 포함된 픽셀이 픽쳐의 최외각 픽셀인 경우, 소벨 마스크를 적용함에 있어 마스킹 위치에 존재하지 않는 픽셀 값을 마스킹 위치에 근접한 픽쳐의 최외각 픽셀값으로 사용하는 단계를 포함할 수 있다. 상기 에지 산출 방법은 상기 영상 처리 대상 블록의 에지 정보를 판단한 결과를 상기 제1 메모리로 복사하는 단계와 상기 제1 메모리로 복사된 상기 에지 판단 결과를 출력하는 단계를 더 포함할 수 있다. 상기 영상 처리 대상 블록의 주변 픽셀은,
상기 영상 처리 대상 블록에 포함된 픽셀 중 최 상단 최 좌측에 위치한 픽셀의 위치를 (x, y)라고 하고(여기서 x 및 y는 정수), 상기 영상 처리 대상 블록의 크기를 NxN(여기서, n은 자연수)라고 할 경우, 아래의 좌표 값에 해당하는 픽셀일 수 있다.
Figure 112013007166918-pat00001
상술한 본 발명의 다른 목적을 달성하기 위한 본 발명의 일 측면에 따른 영상의 에지를 산출하는 영상 처리 장치는 영상 처리 대상 블록에 포함된 픽셀 정보와 상기 영상 처리 대상 블록의 주변 픽셀 정보를 저장하는 제1 메모리, 상기 제1 메모리에 저장된 상기 영상 처리 대상 블록의 픽셀 정보와 상기 주변 픽셀 정보를 기초로 에지 산출 연산을 수행하는 에지 연산부, 상기 에지 연산부의 에지 산출 연산 결과를 저장하는 제2 메모리와 상기 제 2 메모리에 저장된 상기 에지 산출 연산 결과를 기초로 에지 정보를 판단하는 GPU(graphic process unit)을 포함할 수 있다. 상기 제1 메모리는 전역 메모리이고, 상기 제2 메모리는 공유 메모리일 수 있다. 상기 에지 산출 연산은 소벨 마스크(sobel mask)를 사용한 소벨 연산일 수 있다. 상기 에지 연산부는 영상 처리 대상 블록에 포함된 픽셀이 픽쳐의 최외각 픽셀인지 여부를 판단하고 상기 영상 처리 대상 블록에 포함된 픽셀이 픽쳐의 최외각 픽셀인 경우, 소벨 마스크를 적용함에 있어 마스킹 위치에 존재하지 않는 픽셀 값을 마스킹 위치에 근접한 픽쳐의 최외각 픽셀값으로 사용하도록 구현될 수 있다. 상기 영상 처리 장치는 상기 제1 메모리로 복사된 상기 에지 판단 결과를 출력하는 출력부를 더 포함하되, 상기 제1 메모리는 상기 영상 처리 대상 블록의 에지 정보를 판단한 결과를 저장하도록 구현될 수 있다. 상기 영상 처리 대상 블록의 주변 픽셀은,
상기 영상 처리 대상 블록에 포함된 픽셀 중 최 상단 최 좌측에 위치한 픽셀의 위치를 (x, y)라고 하고(여기서 x 및 y는 정수), 상기 영상 처리 대상 블록의 크기를 NxN(여기서, n은 자연수)라고 할 경우, 아래의 좌표 값에 해당하는 픽셀일 수 있다.
Figure 112013007166918-pat00002
상술한 바와 같이 본 발명의 실시예에 따른 공유 메모리를 이용한 영상 처리 방법 및 장치에 따르면 전역 메모리에서 필요한 영상 데이터에 대한 처리를 수행한 후 공유 메모리 영역으로 영상 처리된 정보를 전송함으로서 불필요하게 반복적으로 메모리 영역에 접근하는 횟수가 줄어들어 영상 처리 속도가 향상될 수 있다.
도 1은 본 발명의 실시예에 따른 영상 처리 장치를 나타낸 블록도이다.
도 2는 본 발명의 실시예에 따른 공유 메모리를 이용한 영상 처리 방법을 나타낸 개념도이다.
도 3은 본 발명의 실시예에 따른 공유 메모리를 이용한 영상 처리 방법을 나타낸 개념도이다.
도 4는 본 발명의 실시예에 따른 영상 처리 방법을 나타낸 개념도이다.
도 5는 본 발명의 실시예에 따른 영상 처리 방법을 나타낸 개념도이다.
도 6은 본 발명의 실시예에 따른 영상 처리 방법을 나타낸 순서도이다.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 아울러, 본 발명에서 특정 구성을 "포함"한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
도 1은 본 발명의 실시예에 따른 영상 처리 장치를 나타낸 블록도이다.
도 1을 참조하면, 영상 처리 장치는 주 메모리(100), 전역 메모리(120), 공유 메모리(140), GPU(graphic processor unit, 160), CPU(central processor unit, 190)를 포함할 수 있다.
도 1에서 개시된 영상 처리 장치의 각각의 구성부들은 본 발명의 실시예를 설명하기 위해 기능상으로 도시되 구성부로서 하나의 예시이다. 위의 복수의 구성부로 구분하여 표현된 구성부들은 하나의 구성부에 포함되어 구현될 수 있다. 또한 하나의 구성부가 복수의 구성부로 나뉘어질 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
주 메모리(100)는 영상 처리를 수행할 화소(또는 픽셀)에 대한 화소값(휘도값 및/또는 색차값) 및 기타 영상 처리를 수행하는데 필요한 정보가 저장될 수 있다.
전역 메모리(120)는 주 메모리(100)로부터 전송되는 영상 데이터 정보를 복사한 값이 저장될 수 있다. 또한 전역 메모리(120)에서는 GPU(160)에서 영상 처리가 수행된 영상 정보가 전송되어 저장될 수 있다.
공유 메모리(140)는 GPU(160)에 포함된 메모리로서 다른 메모리에 비해 빠른 처리 속도를 가질 수 있다. 예를 들어, 공유 메모리(140)는 16KB의 용량을 L1 캐시와 동등한 속도로 처리할 수 있다. 공유 메모리(140)를 읽고 쓰는 속도는 GPU(160)의 1 사이클 이내의 속도가 될 수 있다. 후술할 GPU(160)의 스트리밍 프로세서(streaming processor, SP, 180)에서는 공유 메모리(140)를 자유롭게 할당하여 영상 처리를 하기 위해 사용될 수 있다.
위의 주 메모리(100), 전역 메모리(120), 공유 메모리(140)는 용도에 따라 서로 다른 메모리 구조를 가질 수 있다. 예를 들어, 전역 메모리(120)는 용량 면에서 다른 메모리보다 큰 용량을 가질 수 있으나 공유 메모리(140)보다는 느린 메모리 프로세싱 속도를 가질 수 있다. 즉, 영상 처리 장치에 포함된 각각의 메모리들은 용도에 따라 서로 다른 종류의 메모리로서 구현될 수 있다. 또한 위의 메모리들이 동일한 메모리로 구현되는 것도 가능하고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
GPU(160)는 영상 처리를 위한 프로세서로서 영상 처리를 수행하는 복수의 코어를 포함할 수 있다. 영상 처리를 수행하는 GPU(160)에 포함된 코어를 다른 용어로 스트리밍 프로세서(streaming processor, SP, 180)라고 할 수 있다.
GPU(160)에서는 이러한 다수의 코어를 제어하기 위해 SIMD(single instruction and multiple data) 아키텍쳐를 사용할 수 있다. SIMD는 단일 명령어로 복수의 데이터를 처리하기 위한 데이터 처리 방법을 지시한다. 하나의 프로세서가 명령을 처리하기 위해서는 fetch-decode-execution 과정을 거치게 된다. 만약, SIMD를 사용하지 않을 경우 동일한 연산 과정에 대해 프로세서는 fetch-decode-execution 과정을 반복적으로 수행해야 한다. 하지만, SIMD를 사용할 경우, fetch-decode-execution 과정을 반복적으로 수행하지 않고 한번의 명령어로 병렬적인 연산을 수행하기 때문에 불필요한 fetch-decode과정이 줄어들어 연산의 처리 속도가 향상될 수 있다.
GPU(160)에 포함된 스트리밍 프로세서(180)는 GPU(160) 내에서 실질적인 프로세싱이 수행되는 부분으로서 예를 들어, 4 개의 쓰레드(thread)를 동작시킬 수 있다. 이러한 스트리밍 프로세서(180)가 복수개가 모이는 경우 SM(streaming multiprocessor) 집합을 형성할 수 있다. 각각의 SP(180)가 동작시키는 쓰레드를 관리하기 위해 GPU(160)는 SIMD 아키텍쳐를 사용할 수 있다.
CPU(180)는 GPU(160)의 동작 또는 메모리(100, 120, 140)와 같은 영상 처리를 수행함에 있어서 각 구성부의 동작을 제어하기 위해 사용될 수 있다.
이하, 본 발명의 실시예에 따른 전역 메모리 및 공유 메모리를 통해 소벨 마스크(sobel mask)를 기초로 소벨 연산을 수행하여 에지를 검출하는 방법에 대해 기술한다. 에지는 영상에서 밝기가 급격하게 변하는 부분으로서 영상의 특징을 나타내기 위해 중요한 특징적인 부분이 될 수 있다. 마스크는 영상에서 특정한 샘플을 기준으로 특정한 영상 처리 값을 산출하기 위한 행렬 형태의 구조체이다.
이하, 본 발명의 실시예에서는 설명의 편의상 소벨 마스크를 이용한 에지 판단 방법에 대해서만 기술하나, 소벨 마스크가 아닌 다양한 다른 마스크(예를 들어, 라플라시안 마스크, 프레위트 마스크 등)를 사용할 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다. 또한 본 발명의 실시예에 따른 전역 메모리 및 공유 메모리를 사용하여 마스킹 연산을 수행하는 방법은 에지 검출 뿐만 아니라 다른 영상 처리 방법에도 사용될 수 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
이하, 본 발명의 실시예에 따른 전역 메모리 및 공유 메모리를 통해 소벨 마스크(sobel mask)를 기초로 소벨 연산을 수행하여 에지를 검출하는 방법은 아래와 같은 단계를 통해 수행될 수 있다.
(1) 전역 메모리(120)로 주 메모리(100)에 저장된 영상 정보를 복사한다
주 메모리(100)에는 영상 정보(예를 들어, 휘도 픽셀 정보)가 저장되어 있을 수 있다. 전역 메모리(120)는 주 메모리(100)에서 영상 처리를 수행할 영상 정보를 제공받아 저장할 수 있다.
(2) 전역 메모리(120)에 저장된 영상 정보 중 영상 처리 대상 블록의 픽셀과 영상 처리 대상 블록의 주변 픽셀을 추가적으로 복사하여 소벨 연산 대상 블록을 생성한다.
영상 처리 대상 블록은 영상 처리(예를 들어, 에지 정보 산출)의 대상이 되는 블록이고 소벨 연산 대상 블록은 영상 처리 대상 블록에서 에지를 판단하기 위해 소벨 연산을 수행 시 소벨 연산의 대상이 되는 블록이 될 수 있다.
본 발명의 실시예에 따른 공유 메모리를 이용한 영상 처리 방법에서는 전역 메모리(120)에서 영상 처리 대상 블록을 주 메모리(100)에서 복사할 때 영상 처리 대상 블록과 소벨 연산의 대상이 되는 영상 처리 대상 블록 주변의 추가적인 픽셀 정보(이하, 추가 픽셀 정보라고 함)를 복사해오는 방법을 사용할 수 있다.
소벨 연산을 수행시 추가 픽셀 정보를 참조하는 사용함으로서 소벨 연산의 결과가 좀 더 정확해져 영상 처리 대상 블록의 에지 정보를 정확하게 판단할 수 있다. 또한 전역 메모리(120)에서 미리 추가 픽셀 정보를 복사하여 소벨 연산을 수행하기 때문에 공유 메모리(140)에서 따로 추가 픽셀 정보를 전역 메모리(120)로부터 가지고 와서 소벨 연산을 수행하지 않아도 되므로 불필요한 반복적인 메모리 접근이 수행되지 않기 때문에 영상 처리를 수행하는 속도가 빨라질 수 있다.
예를 들어, 3x3 크기의 소벨 마스크를 사용하는 경우, 특정한 픽셀에 대해 소벨 연산을 수행할 때 연상 대상 픽셀을 기준으로 8 개의 주변 픽셀이 존재해야 한다. 하지만, 영상 처리 대상 블록의 외각에 위치한 픽셀의 경우, 소벨 연산의 대상이 되는 일부의 주변 픽셀이 존재하지 않는다. 이러한 경우, 추가 픽셀 정보를 전역 메모리에 추가적으로 복사하여 사용할 수 있는데, 영상 처리 대상 블록의 크기가 8x8 인 경우, 10x10 크기의 블록을 전역 메모리로 복사하여 사용할 수 있다. 이에 대해서는 추가적으로 상술한다.
(3) 소벨 연산을 수행한다.
전역 메모리(120)에 저장된 영상 처리 대상 블록과 주변 픽셀 정보에 대해 소벨 연산을 수행한다. 전술한 바와 같이 영상 처리 대상 블록이 8x8 크기의 블록인 경우, 10x10 크기의 블록(소벨 연산 대상 블록)이 전역 메모리(120)로 복사될 수 있다. 10x10 크기의 블록은 추가적으로 4 개의 6x6 크기의 블록 단위로 나뉘어서 3x3 크기의 소벨 마스크를 사용하여 소벨 연산을 수행할 수 있다. 영상 처리 블록의 크기와 소벨 마스크의 크기는 설명의 편의상 임의적으로 설정한 값이다. 영상 처리 블록의 크기와 소벨 마스크의 크기는 다양한 값을 가질 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다.
소벨 연산은 x 축 미분 소벨 마스크와 y축 미분 소벨 마스크를 이용하여 현재 픽셀과 현재 픽셀의 주변 픽셀 정보를 기초로 필터링을 수행하여 산출된 값을 기초로 블록에 포함된 에지 정보를 판단하는 방법이다. 소벨 마스크를 이용한 에지 추출 방법은 영상에서 모든 방향의 에지를 추출할 수 있고 잡음에 강한 특성을 가지고 있다. 영상 처리 대상 블록 및 추가 픽셀 정보에 대해 소벨 연산을 수행함에 있어서, 블록 별 동기화를 수행하여 나뉘어진 블록들 사이에서 소벨 연산이 정확하게 수행되도록 할 수 있다.
소벨 연산을 수행하기 위해 CPU 또는 GPU와 같은 연산 처리 장치가 사용될 수 있다. 이러한 소벨 연산을 처리하기 위한 구성부를 에지 연산부라는 용어로 정의하여 사용할 수 있다.
(4) 소벨 연산 후 생성된 영상 처리 대상 블록을 공유 메모리(140)로 복사하여 에지 검출을 수행한다.
공유 메모리(140)로 소벨 연산이 수행된 결과값 전송하여 GPU(160)에서 에지 검출을 수행할 수 있다. 소벨 연산 결과는 픽셀의 변화 정도를 나타내는 값이 되어 영상에서 에지를 검출하기 위해 사용될 수 있다. 에지는 영상이 밝기가 낮은 값에서 높은 값으로 변하거나 이와 반대로 변하는 지점에 존재하는 영상의 경계 부분을 가리킬 수 있다. GPU(160)에서는 전역 메모리(120)에 저장된 소벨 연산이 수행된 결과를 기초로 영상의 에지 부분을 탐지할 수 있다.
(5) 에지 판단 결과값을 전역 메모리(120)로 복사하여 출력한다
공유 메모리(140)에서 수행된 에지 판단 결과를 전역 메모리(120)로 복사될 수 있고 전역 메모리(120)에 저장된 에지 판단 결과값을 기초로 에지 정보가 포함된 영상을 출력할 수 있다. 따로 도시하지는 않았으나, 전역 메모리(120)에 저장된 에지 판단 결과값을 기초로 에지 정보가 포함된 영상을 출력하는 장치를 출력부라는 용어로 정의하여 사용할 수 있다.
도 2는 본 발명의 실시예에 따른 공유 메모리를 이용한 영상 처리 방법을 나타낸 개념도이다.
도 2에서는 전역 메모(200)리와 공유 메모리(280) 사이에서 픽셀 정보를 복사하여 영상의 에지 정보를 산출하는 방법에 대해 개시한다. 도 2에서 개시되는 영상 처리 대상 블록의 크기 및 소벨 마스크의 크기는 임의적인 것으로서 다른 크기가 될 수도 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함된다. 또한, 소벨 연산이 아닌 다른 에지 추출 방법이나 에지 추출 방법이 아닌 다른 영상 처리 방법을 수행하는 경우도 본 발명이 적용될 수 있고 이러한 실시예 또한 본 발명의 권리 범위에 포함될 수 있다.
도 2의 (A)는 전역 메모리(200)에 존재하는 8x8 크기의 블록(220)을 나타낸다. 8x8 크기의 블록(220)은 4x4 크기의 블록(220-1, 220-2, 220-3, 220-4)으로 분할되어 각각의 분할된 블록에 대해 병렬적인 영상 처리를 수행할 수 있다. 전역 메모리(200)에 존재하는 8x8 크기의 블록(220)에 포함되는 픽셀 정보를 기초로 에지 정보를 산출하기 위해서는 8x8 크기의 블록(220)에 포함되는 각각의 픽셀에 대해 소벨 마스크를 적용하여 소벨 연산을 수행하여야 한다.
도 2의 (D)는 3x3 크기의 소벨 마스크를 나타낸 것이다. 소벨 연산은 3x3 크기의 2개의 소벨 마스크(x 축 미분 소벨 마스크와 y축 미분 소벨 마스크)를 사용하여 가로 방향 및 세로 방향으로 미분하여 에지를 추출하는 연산을 수행할 수 있다. 연산 대상 픽셀을 기준으로 주변 픽셀의 값에 대해 필터의 값을 곱해 합을 구한 후 그것의 절대 값들의 합을 결과로 리턴할 수 있고, 결과값을 기초로 영상의 에지 정보를 판단할 수 있다.
도 2의 (B)는 영상 처리 대상 블록의 추가 픽셀을 나타낸 개념도이다.
소벨 마스크(260)를 적용 시 8x8 크기의 블록의 외곽에 위치한 픽셀(240)의 경우, 소벨 연산을 수행하기 위한 대상 픽셀이 존재하지 않을 수 있다. 예를 들어, 8x8 크기의 블록의 좌측 상단 픽셀(240)은 소벨 연산 대상 픽셀 중 5 개의 픽셀(a, b, c, d, g)이 존재하지 않는다. 이러한 경우, 본 발명의 실시예에서는 영상 처리 대상 블록에 추가적으로 주변 픽셀 정보인 추가 픽셀 정보를 추가적으로 전역 메모리에 복사하여 소벨 연산을 수행할 수 있다. 소벨 마스크의 크기가 3x3인 경우, 8x8 블록의 외곽에 존재하는 주변 픽셀을 추가적으로 전역 메모리로 복사하여 소벨 연산을 수행할 수 있다.
추가적으로 복사되는 픽셀의 위치는 영상 처리 대상 블록에 포함된 픽셀 중 최상단 최좌측에 위치한 픽셀의 위치를 (x, y)라고 하고(여기서 x 및 y는 정수) 영상 처리 대상 블록의 크기를 NxN(여기서, N은 자연수)라고 할 경우, 아래의 수학식 1에 해당하는 좌표의 위치에 존재하는 픽셀일 수 있다. 소벨 마스크의 크기에 따라 아래의 수식은 변할 수 있다.
<수학식 1>
Figure 112013007166918-pat00003
8x8 크기의 블록은 임의적인 블록 크기로서 다른 블록 크기(예를 들어, 4x4, 8x8 크기의 블록)에 대해 외곽 픽셀을 추가적으로 전역 메모리로 복사하여 소벨 연산을 수행할 수도 있다.
소벨 연산이 수행됨에 있어서 8x8 크기의 블록은 추가적으로 분할하여 4x4 크기의 4 개의 블록으로 분할되어 각각의 블록에 대해 개별적으로 에지 판단을 수행할 수 있다. 이러한 경우, 각각의 분할된 블록 사이에 동기를 맞추어 에지를 산출하기 위한 연산을 병렬적으로 수행하도록 할 수 있다.
공유 메모리에서는 8x8 크기의 블록을 분할하지 않고 8x8 블록 단위로 에지 판단이 수행될 수도 있다. 즉, 공유 메모리에서 에지 판단을 수행하기 위한 대상 블록의 크기는 변할 수 있다.
도 2의 (C)는 소벨 연산 후 산출된 값을 공유 메모리(280)로 복사하여 에지 판단을 수행하기 위한 대상 블록을 나타낸다. 전역 메모리에서 소벨 연산이 수행된 블록은 공유 메모리(280)로 복사되어 에지 판단을 수행할 수 있다.
전술한 방법을 사용하는 경우 공유 메모리에서 소벨 연산을 수행하기 위한 주변 픽셀 정보를 알기 위해 불필요하게 전역 메모리를 지속적으로 참조함으로 인해 발생하는 영상 처리 속도 감소를 방지할 수 있어 영상 처리 속도가 향상될 수 있다.
도 3은 본 발명의 실시예에 따른 공유 메모리를 이용한 영상 처리 방법을 나타낸 개념도이다.
도 3에서는 소벨 마스크의 크기가 변하고 영상 처리 대상 블록의 크기가 변할 경우 전역 메모리와 공유 메모리 사이에서 픽셀 정보를 복사하여 영상의 에지 정보를 산출하는 방법에 대해 개시한다.
도 3의 (A)는 전역 메모리에 존재하는 8x8 크기의 블록(300)을 나타낸다.
전역 메모리에 존재하는 8x8 크기의 블록(300)에 포함되는 픽셀 정보를 기초로 에지 정보를 산출하기 위해서는 8x8 크기의 블록(300)에 포함되는 각각의 픽셀에 소벨 마스크를 이용한 소벨 연산을 수행하여야 한다.
도 3의 (D)는 5x5 크기의 소벨 마스크를 나타낸 것이다. 소벨 마스크를 적용시 8x8 크기의 블록에 포함되는 외곽 픽셀은 소벨 연산을 수행하기 위한 대상 픽셀이 존재하지 않을 수 있다. 예를 들어, 8x8 블록의 좌측 상단 픽셀(320)은 소벨 연산 대상 픽셀 중 18 개의 픽셀(a, b, c, d, e, f, g, h, i, j, k, l, p, q, u, v)이 존재하지 않는다. 이러한 경우 본 발명의 실시예에서는 영상 처리 대상 블록에 추가적으로 18개의 주변 픽셀 정보를 복사하여 소벨 연산을 수행할 수 있다. 즉, 소벨 마스크의 크기에 따라 전역 메모리에 존재하는 블록의 주변 픽셀을 추가적으로 전역 메모리로 복사하여 소벨 연산을 수행할 수 있다.
도 3의 (C)는 소벨 연산 후 산출된 값을 공유 메모리로 복사하여 에지 판단을 수행하는 블록을 나타낸다. 전역 메모리에서 소벨 연산이 수행된 블록은 공유 메모리로 복사되어 에지 판단을 수행할 수 있다.
이러한 방법을 사용함으로서 공유 메모리에서 소벨 연산을 수행하기 위한 주변 픽셀 정보를 알기 위해 불필요하게 전역 메모리를 지속적으로 참조함으로 인해 발생하는 영상 처리 속도 감소를 방지할 수 있어 영상 처리 속도가 향상될 수 있다.
소벨 마스크의 크기는 전술한 바와 같이 변할 수 있다. 또한, 블록의 크기도 8x8이 아닌 다른 크기의 블록에 대해 소벨 연산을 수행하여 에지를 판단하는 것도 가능하다. 소벨 마스크의 크기는 에지 판단을 수행하는 블록의 크기, 블록의 위치와 같은 특정한 변수에 따라 변할 수 있다.
도 4는 본 발명의 실시예에 따른 영상 처리 방법을 나타낸 개념도이다.
도 4를 참조하면, 공유 메모리를 이용하여 영상의 에지 정보를 산출하기 위해서는 픽쳐에 포함된 블록의 위치에 따라 적용되는 소벨 마스크의 크기가 달라질 수 있다.
예를 들어, 픽쳐의 중앙부와 같이 소벨 마스크가 적용될 수 있는 픽셀이 모두 존재하는 위치의 픽셀(440)의 경우, 5x5와 같은 큰 크기의 소벨 마스크를 적용하여 소벨 연산을 수행할 수 있다. 하지만, 픽쳐의 외곽에 위치한 픽셀(420)에 대해서는 5x5와 같은 큰 크기의 소벨 마스크를 적용하는 경우, 소벨 연산을 수행하기 위한 픽셀이 존재하지 않을 수 있다. 이러한 경우 3x3 크기의 소벨 마스크를 사용하여 소벨 연산을 수행하되, 소벨 마스크가 적용되는 위치에 존재하지 않는 픽셀(400)은 블록의 픽셀값을 복사하여 사용할 수 있다. 이러한 실시예에 대해 도 5에서 상술한다.
도 5는 본 발명의 실시예에 따른 영상 처리 방법을 나타낸 개념도이다.
도 5에서는 영상의 에지를 판단 시 외곽에 존재하는 픽셀값이 존재하지 않을 경우 영상 처리 방법에 대해 개시한다.
픽쳐의 최외각에 위치한 블록의 최외각 픽셀(500, 520)은 최외곽 픽셀 값이 존재하지 않을 수 있다. 이러한 경우 소벨 마스크를 최외각 픽셀에 적용하게 되면, 소벨 연산을 수행 시 정확한 값을 산출할 수 없다.
본 발명의 실시예에 따르면 소벨 연산을 수행시 필요한 최외각 픽셀이 존재하지 않는 경우, 블록의 픽셀값을 복사하여 최외각 픽셀값으로 사용할 수 있다.
예를 들어, 최 좌측 상단에 존재하는 픽셀(500)의 경우 소벨 마스크가 적용되는 위치 중 일부의 위치(a, b, c, d, g)에서 픽셀이 존재하지 않는다. 이러한 경우 최 좌측 상단에 존재하는 픽셀 값(e)을 해당 위치로 복사하여 소벨 연산을 수행할 수 있다.
또 다른 예로 상단에 존재하는 픽셀(520)의 경우 소벨 마스크가 적용되는 위치 중 일부의 위치(a, b, c)에 픽셀이 존재하지 않는다. 이러한 경우 픽셀이 존재하지 않는 위치에서 가장 가까운 위치에 존재하는 상단 픽셀(d, e, f)의 값을 대입하여 소벨 연산을 수행할 수 있다. 즉, 영상 처리 대상 블록에 포함된 픽셀이 픽쳐의 최외각 픽셀인지 여부를 판단하고 상기 영상 처리 대상 블록에 포함된 픽셀이 픽쳐의 최외각 픽셀인 경우, 소벨 마스크를 적용함에 있어 마스킹 위치에 존재하지 않는 픽셀 값을 마스킹 위치에 근접한 픽쳐의 최외각 픽셀값으로 사용할 수 있다.
도 6은 본 발명의 실시예에 따른 영상 처리 방법을 나타낸 순서도이다.
도 6을 참조하면, 전역 메모리에 저장된 영상 정보 중 영상 처리 대상 블록의 픽셀과 영상 처리 대상 블록의 주변 픽셀(추가 픽셀 정보)을 추가적으로 복사하여 소벨 연산 대상 블록을 생성한다(단계 S600).
본 발명의 실시예에 따른 공유 메모리를 이용한 영상 처리 방법에서는 전역 메모리에서 영상 처리 대상 블록을 주 메모리에서 복사할 때 영상 처리 대상 블록과 소벨 연산의 대상이 되는 영상 처리 대상 블록 주변의 추가 픽셀 정보를 사용할 수 있다. 이러한 방법을 사용함으로서 전역 메모리에서 미리 주변 픽셀 정보를 복사하여 소벨 연산을 수행하기 때문에 공유 메모리에서 따로 주변 픽셀 정보를 전역 메모리로부터 가지고 와서 소벨 연산을 수행하지 않아도 되므로 불필요한 반복적인 메모리 접근이 수행되지 않아 연산 속도가 빨라질 수 있다.
소벨 연산을 수행한다(단계 S610).
전역 메모리에 저장된 영상 처리 대상 블록과 주변 픽셀 정보에 대해 소벨 연산을 수행한다. 예를 들어, 영상 처리 대상 블록이 8x8 크기의 블록인 경우, 10x10 크기의 블록이 전역 메모리로 복사될 수 있다. 10x10 크기의 블록은 추가적으로 4 개의 6x6 크기의 블록으로 나뉘어서 3x3 크기 소벨 마스크를 이용하여 소벨 연산을 수행할 수 있다. 소벨 연산을 수행함에 있어서, 나뉘어진 블록들은 병렬적인 소벨 연산을 수행할 수 있다.
소벨 연산을 수행 시 사용되는 소벨 마스크의 크기는 임의적인 것으로 변할 수 있다. 또한, 블록의 크기는 분할되지 않고 그대로 에지 판단의 대상이 될 수 있다. 또한, 소벨 연산을 수행함에 있어, 주변 픽셀 정보가 존재하지 않는 픽쳐의 최외각 블록에 대해서는 블록에 존재하는 가장 가까운 위치의 픽셀 값을 복사하여 추가 픽셀 정보로 활용하여 소벨 연산을 수행할 수 있다.
소벨 연산 후 생성된 영상 처리 대상 블록을 공유 메모리로 복사하여 에지 정보를 검출한다(단계 S620).
공유 메모리로는 소벨 연산이 수행된 결과값을 복사하여 에지 검출을 수행할 수 있다. GPU에서는 전역 메모리에 소벨 연산이 수행된 결과를 기초로 영상의 에지 부분을 탐지할 수 있다.
에지 판단 결과값을 전역 메모리로 복사하여 출력한다(단계 S630).
공유 메모리에서 수행된 에지 판단 결과를 전역 메모리로 복사될 수 있고 전역 메모리에 저장된 에지 판단 결과를 기초로 에지 정보를 포함한 영상을 출력할 수 있다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (5)

  1. 공유 메모리를 이용한 영상 처리 방법에 있어서,
    (a) 영상 처리 대상 블록에 포함된 픽셀 정보를 전역 메모리에 복사하는 단계;
    (b) 상기 전역 메모리에서, 상기 영상 처리 대상 블록의 외곽 픽셀 정보를 상기 영상 처리 대상 블록의 주변 픽셀 정보로 복사하는 단계;
    (c) 상기 영상 처리 대상 블록을 소벨 마스크를 적용할 블록의 크기로 나누어 상기 공유 메모리로 복사하되, 나누어진 블록은 다수이고, 상기 나누어진 블록은 상기 나누어진 블록의 외곽에도 소벨 마스크를 적용하도록 상기 나누어진 블록의 주변 블록도 포함하여 복사하는 단계;
    (d) 상기 공유 메모리에서 상기 나누어진 블록들에 대한 소벨 마스크를 적용하되, 상기 나누어진 블록들은 병렬적으로 소벨 연산이 수행되는 단계; 및,
    (e) 상기 소벨 마스크가 적용된 결과를 상기 전역 메모리로 복사하는 단계를 포함하고,
    상기 소벨 마스크의 크기는 3×3 이고,
    상기 영상 처리 대상 블록에 포함된 픽셀 중 최 상단 최 좌측에 위치한 픽셀의 위치를 (x, y)라고 하고(여기서 x 및 y는 정수), 상기 영상 처리 대상 블록의 크기를 N×N(여기서, N은 자연수)라고 할 경우, 상기 영상 처리 대상 블록에서 추가되는 주변 픽셀은 다음 [수식 1]에 의한 픽셀인 것을 특징으로 하는 공유 메모리를 이용한 영상 처리 방법.
    [수식 1]
    Figure 112014058503246-pat00011

  2. 삭제
  3. 삭제
  4. 삭제
  5. 공유 메모리를 이용한 영상 처리 장치에 있어서,
    영상 처리 대상 블록에 포함된 픽셀 정보 및, 상기 영상 처리 대상 블록의 외곽 픽셀 정보가 복사된 상기 영상 처리 대상 블록의 주변 픽셀 정보를 저장하는 전역 메모리;
    상기 영상 처리 대상 블록을 소벨 마스크를 적용할 블록의 크기로 나누어, 나누어진 블록이 복사되어 저장되고, 상기 나누어진 블록은 상기 나누어진 블록의 외곽에도 소벨 마스크를 적용하도록 상기 나누어진 블록의 주변 블록도 포함하여 복사되어 저장되는 공유 메모리; 및,
    상기 공유 메모리에 복사된 상기 나누어진 블록들에 대하여 소벨 마스크를 병렬적으로 적용하는 GPU(graphic process unit)를 포함하고,
    상기 공유 메모리에서 상기 소벨 마스크가 적용된 결과는 상기 전역 메모리로 복사되고,
    상기 소벨 마스크의 크기는 3×3 이고,
    상기 영상 처리 대상 블록에 포함된 픽셀 중 최 상단 최 좌측에 위치한 픽셀의 위치를 (x, y)라고 하고(여기서 x 및 y는 정수), 상기 영상 처리 대상 블록의 크기를 N×N(여기서, N은 자연수)라고 할 경우, 상기 영상 처리 대상 블록에서 추가되는 주변 픽셀은 다음 [수식 2]에 의한 픽셀인 것을 특징으로 하는 공유 메모리를 이용한 영상 처리 장치.
    [수식 2]
    Figure 112014058503246-pat00012
KR1020130008256A 2013-01-24 2013-01-24 공유 메모리를 이용한 영상 처리 방법 및 장치 KR101499124B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130008256A KR101499124B1 (ko) 2013-01-24 2013-01-24 공유 메모리를 이용한 영상 처리 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130008256A KR101499124B1 (ko) 2013-01-24 2013-01-24 공유 메모리를 이용한 영상 처리 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20140095359A KR20140095359A (ko) 2014-08-01
KR101499124B1 true KR101499124B1 (ko) 2015-03-05

Family

ID=51743826

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130008256A KR101499124B1 (ko) 2013-01-24 2013-01-24 공유 메모리를 이용한 영상 처리 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101499124B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101701347B1 (ko) * 2015-05-15 2017-02-02 주식회사 비디엠케이 고해상도 영상의 고속필터처리 방법
KR101876007B1 (ko) * 2015-12-28 2018-07-06 전자부품연구원 분산 및 병렬 프로그래밍 기반의 실시간 초다시점 3d 콘텐츠 합성 시스템 및 방법
KR101716861B1 (ko) * 2016-10-04 2017-03-15 (주)볼트마이크로 영상데이터 관리 장치 및 방법
KR101887043B1 (ko) * 2017-05-26 2018-08-09 목포해양대학교 산학협력단 그래픽 프로세서를 이용한 병렬연산 기반 연무 제거 고속화 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101051459B1 (ko) * 2010-05-31 2011-07-22 한양대학교 산학협력단 영상의 에지를 추출하는 장치 및 방법
WO2012012440A1 (en) * 2010-07-19 2012-01-26 Advanced Micro Devices, Inc. Data processing using on-chip memory in multiple processing units

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101051459B1 (ko) * 2010-05-31 2011-07-22 한양대학교 산학협력단 영상의 에지를 추출하는 장치 및 방법
WO2012012440A1 (en) * 2010-07-19 2012-01-26 Advanced Micro Devices, Inc. Data processing using on-chip memory in multiple processing units

Also Published As

Publication number Publication date
KR20140095359A (ko) 2014-08-01

Similar Documents

Publication Publication Date Title
KR101639852B1 (ko) 그래픽 프로세싱을 위한 픽셀 값 압축
TWI590187B (zh) 用以實現圖形處理單元(gpu)上的最近鄰居搜索之方法、裝置與機器可讀媒體
US10262454B2 (en) Image processing apparatus and method
JP7025415B2 (ja) プリミティブシェーダ
US9881391B2 (en) Procedurally defined texture maps
US20160171754A1 (en) Image processing apparatus and method
CN107133914B (zh) 用于生成三维彩色图像的装置和用于生成三维彩色图像的方法
US10242492B2 (en) 3D rendering and shadow information storing method and apparatus
US20160078637A1 (en) Method and apparatus for rendering
JP7004717B2 (ja) 入力インデックスストリームのプリミティブの識別
TWI601096B (zh) 用於細分表面的直接和互動式射線追蹤之方法及設備
KR101499124B1 (ko) 공유 메모리를 이용한 영상 처리 방법 및 장치
WO2017052948A1 (en) Histogram-based image segmentation
EP3504685A1 (en) Method and apparatus for rendering object using mipmap including plurality of textures
JP2012515982A (ja) コンピュータグラフィックスのためのスムージングされたローカルヒストグラムフィルタ
CN111754381A (zh) 图形渲染方法、装置和计算机可读存储介质
US10140755B2 (en) Three-dimensional (3D) rendering method and apparatus
WO2018111014A1 (en) Method and apparatus for rendering object using mipmap including plurality of textures
CN108960012B (zh) 特征点检测方法、装置及电子设备
US10062138B2 (en) Rendering apparatus and method
CN108734712B (zh) 背景分割的方法、装置及计算机存储介质
US10212406B2 (en) Image generation of a three-dimensional scene using multiple focal lengths
CN115829824A (zh) 用于优化机器学习推断的图形处理的系统和方法
US10134184B2 (en) Method of rendering object including path and rendering apparatus for performing path rendering
US20170186213A1 (en) Methods and apparatuses for determining layout of stored texture

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: 20180112

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190211

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191223

Year of fee payment: 6