KR20160049620A - 이미지 처리 시스템, 이미지 복원 시스템 및 그 방법 - Google Patents

이미지 처리 시스템, 이미지 복원 시스템 및 그 방법 Download PDF

Info

Publication number
KR20160049620A
KR20160049620A KR1020140146305A KR20140146305A KR20160049620A KR 20160049620 A KR20160049620 A KR 20160049620A KR 1020140146305 A KR1020140146305 A KR 1020140146305A KR 20140146305 A KR20140146305 A KR 20140146305A KR 20160049620 A KR20160049620 A KR 20160049620A
Authority
KR
South Korea
Prior art keywords
image
pixel
color
value
processed
Prior art date
Application number
KR1020140146305A
Other languages
English (en)
Other versions
KR101652740B1 (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 KR1020140146305A priority Critical patent/KR101652740B1/ko
Priority to US14/631,769 priority patent/US9560364B2/en
Publication of KR20160049620A publication Critical patent/KR20160049620A/ko
Application granted granted Critical
Publication of KR101652740B1 publication Critical patent/KR101652740B1/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)

Abstract

각 픽셀이 RGB 또는 RGBA 형태인 원본 이미지를 인덱스 컬러 형식의 이미지로 변환하는 이미지 처리 시스템 및 그 방법이 개시된다. 본 발명의 일 측면에 따르면, 처리대상 이미지에 포함된 각 픽셀의 색상 값 중 N개(여기서, N은 2 이상의 정수임)인 인덱스 컬러를 포함하는 컬러 팔레트(color palette)를 생성하는 팔레트모듈 및 상기 처리대상 이미지에 포함된 각각의 처리대상 픽셀에 대하여, 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나인 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 처리대상 픽셀의 색상 값을 가리키는 상기 컬러 팔레트 상의 인덱스 값으로 설정하고, 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나가 아닌 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 소정의 예외 값으로 설정하고, 상기 처리대상 픽셀의 색상 값을 예외 버퍼에 저장하는 제어모듈을 포함하는 이미지 처리 시스템이 제공된다.

Description

이미지 처리 시스템, 이미지 복원 시스템 및 그 방법{System and method for image processing and restoring}
본 발명은 이미지 처리 시스템 및 그 제공방법에 관한 것으로, 보다 상세하게는 각 픽셀이 RGB 또는 RGBA 형태인 원본 이미지를 인덱스 컬러 형식의 이미지로 변환하는 이미지 처리 시스템 및 그 방법에 관한 것이다.
최근 이미지의 품질이 점점 높아짐에 따라 하나의 이미지 데이터를 표현하기 위한 데이터의 양이 매우 커지게 되었으며, 이로 인해 저장매체에 많은 수의 이미지 데이터를 저장하기 어렵거나 네트워크를 통해 이미지 데이터를 전송하는데 많은 전송 시간이 소요되는 문제점이 있다. 따라서, 네트워크 트래픽을 줄이고 저장공간을 절약하기 위해, 이미지에 관련된 데이터의 양을 줄이기 위한 각종 기법이 대두되고 있다.
이미지의 크기를 줄이기 위한 대표적인 방법으로 인덱스 컬러 방식을 들 수 있다.
인덱스 컬러 방식은 컬러 팔레트 또는 색상 참조 테이블이라고 불리는 테이블에 이미지의 각 픽셀의 RGB 값을 저장하고, 이미지 내의 각 픽셀 값은 컬러 팔레트의 인덱스를 가지고 있는 형식을 의미한다. 도 1은 4가지 색상으로 구성된 인덱스 컬러 방식의 예를 도시하고 있는 도면이다. 도 1(a)는 4가지 색상으로 구성된 컬러 팔레트를 도시하고 있으며, 도 1(b)는 도 1(a)의 컬러 팔레트의 인덱스 값 중 어느 하나를 픽셀 값으로 가지는 이미지를 도시하고 있다. 예를 들어, 도 1(b)의 픽셀(1)의 픽셀 값은 3이며, 이는 도 1(b)의 픽셀(1)이 실제로는 도 1(a)의 컬러 팔레트의 3번 인덱스의 RGB 값(R3, B3, G3)을 가짐을 의미한다.
도 1의 경우에는 설명의 편의를 위하여 컬러 팔레트의 크기가 4인 경우를 예로 들었지만, 일반적인 인덱스 컬러 방식에서 컬러 팔레트의 크기는 28(=256)일 수 있으며, 인덱스 컬러 방식으로 표현되는 이미지는 컬러 팔레트의 크기(즉, 256개)만큼의 색상을 가질 수 있다.
한편, 이미지를 구성하는 각 픽셀의 픽셀 값이 RGB 값 또는 RGBA 값을 가지는 방식의 경우에는 한 픽셀의 크기가 3~4byte이지만, 이를 상술한 바와 같은 인덱스 컬러 방식으로 표현하는 경우에는 한 픽셀의 크기가 1byte가 되므로 특정 이미지를 인덱스 컬러 방식으로 표현하는 것이 동일한 이미지를 RGB 방식으로 표현하는 것보다 훨씬 더 이미지의 크기를 줄일 수 있게 될 뿐만 아니라, 해당 이미지를 다른 방식으로 압축할 때에도 압축 효율이 좋아지게 된다.
하지만, 인덱스 컬러 방식의 경우, 이미지를 구성하는 색상의 개수가 컬러 팔레트의 크기 이하로 제한되는 문제점이 있다.
따라서, 본 발명이 이루고자 하는 기술적인 과제는 종래의 인덱스 컬러 방식을 개선하여, 컬러 팔레트의 크기 이상의 색상을 표현할 수 있으면서도 종래 인덱스 컬러 방식에 의해 이미지를 표현할 때에 비해 이미지의 크기가 크게 늘어나지 않는 확장 인덱스 컬러 방식을 제안하고, 이를 수행할 수 있는 이미지 처리 시스템 및 방법을 제공하는 것이다.
본 발명의 일 측면에 따르면, 처리대상 이미지에 포함된 각 픽셀의 색상 값 중 N개(여기서, N은 2 이상의 정수임)인 인덱스 컬러를 포함하는 크기 N의 컬러 팔레트(color palette)를 생성하는 팔레트모듈 및 상기 처리대상 이미지에 포함된 각각의 처리대상 픽셀에 대하여, 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나인 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 처리대상 픽셀의 색상 값을 가리키는 상기 컬러 팔레트 상의 인덱스 값으로 설정하고, 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나가 아닌 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 소정의 예외 값으로 설정하고, 상기 처리대상 픽셀의 색상 값을 예외 버퍼에 저장하는 제어모듈을 포함하는 이미지 처리 시스템이 제공된다.
일 실시예에서, 상기 이미지 처리 시스템은 상기 처리대상 이미지에 포함된 각 픽셀의 색상 값 별 빈도수를 산출하고, 빈도수가 가장 높은 N개의 색상 값을 상기 N개의 인덱스 컬러로 선택하는 선택모듈을 더 포함할 수 있다.
일 실시예에서, 상기 제어모듈은, A 대비 B의 비율이 소정의 한계 비율 이상인 경우에, 상기 처리대상 이미지에 포함된 각각의 처리대상 픽셀에 대하여, 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나인 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 처리대상 픽셀의 색상 값을 가리키는 상기 컬러 팔레트 상의 인덱스 값으로 설정하고, 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나가 아닌 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 예외 값으로 설정하고, 상기 처리대상 픽셀의 색상 값을 상기 예외 버퍼에 기록할 수 있다-여기서, A는 상기 처리 대상 픽셀의 총 개수이며, B는 상기 처리대상 이미지에 포함된 각 픽셀 중 상기 N개의 인덱스 컬러 중 어느 하나를 색상 값으로 가지는 픽셀의 총 개수임.
일 실시예에서, N은 2m-1(여기서, m은 자연수)이며, 상기 예외 값은 2m-1인 것을 특징으로 할 수 있다.
일 실시예에서, 상기 이미지 처리 시스템은, 상기 컬러 팔레트가 기록된 컬러 팔레트 파트, 상기 처리 대상 이미지에 포함된 각 픽셀에 상응하는 상기 변환 이미지 상의 픽셀 값이 기록된 비트맵 파트 및 상기 예외 버퍼에 저장된 색상 값이 기록된 예외 버퍼 파트를 포함하는 변환 이미지를 생성하는 생성모듈을 더 포함할 수 있다.
일 실시예에서, 상기 생성모듈은, 상기 컬러 팔레트 파트, 상기 비트맵 파트 및 상기 예외 파트를 압축하여 상기 변환 이미지를 생성할 수 있다.
본 발명의 다른 일 측면에 따르면, 변환 이미지를 처리대상 이미지로 복원하는 시스템에 있어서, 상기 변환 이미지-상기 변환 이미지에 포함된 복원대상 픽셀들은 N개의 인덱스 컬러에 대응되는 인덱스 값과 인덱스 컬러에 대응되지 않는 예외 값을 갖는 이미지 임-를 입력받는 입력모듈 및 상기 변환 이미지에 포함된 각각의 복원대상 픽셀에 대하여, 상기 복원대상 픽셀 값이 상기 예외 값인 경우에는, 상기 예외 값에 대응되는 상기 처리대상 이미지의 색상 값이 저장된 예외 버퍼의 상기 복원대상 픽셀에 상응하는 색상 값을 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단하고, 상기 복원대상 픽셀 값이 상기 인덱스 컬러 중 어느 하나에 상응하는 컬러 팔레트 상의 인덱스 값인 경우에는 상기 인덱스 값에 상응하는 인덱스 컬러를 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단하는 복원모듈을 포함하는 이미지 복원 시스템이 제공된다.
본 발명의 다른 일 측면에 따르면, (a) 이미지 처리 시스템이, 처리대상 이미지에 포함된 각 픽셀의 색상 값 중 N개(여기서, N은 2 이상의 정수임)인 인덱스 컬러를 포함하는 컬러 팔레트(color palette)를 생성하는 단계 및 (b) 상기 이미지 처리 시스템이, 상기 처리대상 이미지를 처리하는 단계를 포함하되, 상기 (b) 단계는, 상기 처리대상 이미지에 포함된 각각의 처리대상 픽셀에 대하여, (b-1) 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나인 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 처리대상 픽셀의 색상 값을 가리키는 상기 컬러 팔레트 상의 인덱스 값으로 설정하는 단계 및 (b-2) 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나가 아닌 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 소정의 예외 값으로 설정하고, 상기 처리대상 픽셀의 색상 값을 예외 버퍼에 저장하는 단계를 포함하는 이미지 처리 방법이 제공된다.
일 실시예에서, 상기 이미지 처리 방법은, 상기 처리대상 이미지에 포함된 각 픽셀의 색상 값 별 빈도수를 산출하는 단계 및 빈도수가 가장 높은 N개의 색상 값을 상기 N개의 인덱스 컬러로 선택하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 (b-1) 단계 및 상기 (b-2) 단계는, A 대비 B의 비율이 소정의 한계 비율 이상인 경우에 수행되는 것을 특징으로 할 수 있다-여기서, A는 상기 처리 대상 픽셀의 총 개수이며, B는 상기 처리대상 이미지에 포함된 각 픽셀 중 상기 N개의 인덱스 컬러 중 어느 하나를 색상 값으로 가지는 픽셀의 총 개수임.
일 실시예에서, 상기 이미지 처리 방법은, (c) 상기 컬러 팔레트가 기록된 컬러 팔레트 파트, 상기 처리 대상 이미지에 포함된 각 픽셀에 상응하는 상기 변환 이미지 상의 픽셀 값이 기록된 비트맵 파트 및 상기 예외 버퍼에 저장된 색상 값이 기록된 예외 버퍼 파트를 포함하는 변환 이미지를 생성하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 (c) 단계는, 상기 컬러 팔레트 파트, 상기 비트맵 파트 및 상기 예외 파트를 압축하여 상기 변환 이미지를 생성하는 단계를 포함할 수 있다.
본 발명의 다른 일 측면에 따르면, 변환 이미지를 처리대상 이미지로 복원하는 이미지 복원 방법으로서,
(1) 이미지 복원 시스템이, 상기 변환 이미지-상기 변환 이미지에 포함된 복원대상 픽셀들은 N개의 인덱스 컬러에 대응되는 인덱스 값과 인덱스 컬러에 대응되지 않는 예외 값을 갖는 이미지 임-를 입력받는 단계 및 (2) 상기 이미지 복원 시스템이, 상기 변환 이미지를 상기 처리대상 이미지로 복원하는 단계를 포함하되, 상기 (2) 단계는, 상기 이미지 복원 시스템이, 상기 변환 이미지에 포함된 각각의 복원대상 픽셀에 대하여, (2-1) 상기 복원대상 픽셀 값이 상기 예외 값인 경우에는, 상기 예외 값에 대응되는 상기 처리대상 이미지의 색상 값이 저장된 예외 버퍼의 상기 복원대상 픽셀에 상응하는 색상 값을 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단하는 단계 및 (2-2) 상기 복원대상 픽셀 값이 상기 인덱스 컬러 중 어느 하나에 상응하는 컬러 팔레트 상의 인덱스 값인 경우에는 상기 인덱스 값에 상응하는 인덱스 컬러를 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단하는 단계를 포함하는 이미지 복원 방법이 제공된다.
본 발명의 다른 일 측면에 따르면, 데이터 처리장치에 설치되며 상술한 방법을 수행하기 위한 기록매체에 저장된 컴퓨터 프로그램이 제공된다.
본 발명의 다른 일 측면에 따르면, 이미지 처리 시스템으로서, 프로세서 및 상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며, 상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 이미지 처리 시스템이 상술한 이미지 처리 방법을 수행하도록 하는 이미지 처리 시스템이 제공된다.
본 발명의 다른 일 측면에 따르면, 이미지 복원 시스템으로서, 프로세서 및 상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며, 상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 이미지 복원 시스템이 상술한 이미지 복원 방법을 수행하도록 하는 이미지 복원 시스템이 제공된다.
본 발명의 기술적 사상에 따르면 따라서, 본 발명의 기술적 사상에 따르면, 제한된 크기의 인덱스(예컨대, 256개)를 가지고서도 상기 인덱스의 크기보다 많은 종류의 픽셀 색상 값을 갖는 이미지에 대해 인덱스 이미지로 무손실 압축할 수 있는 효과가 있다.
또한 처리대상 이미지를 구성하는 색상 값 중 미리 설정된 개수의 인덱스 값(예컨대, 256개의 인덱스 값을 이용하는 경우, 255개의 인덱스 컬러)에 해당하지 않는 색상 값은 하나 또는 복수의 예외 값(예외 인덱스)에 매핑시키고, 실제 픽셀의 색상 값은 별도의 예외 버퍼에 저장되므로 처리대상 이미지의 화질을 손상시키지 않는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 종래의 인덱스 컬러 방식을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 이미지 처리 시스템의 동작을 개략적으로 도시한 도면이다.
도 3a은 본 발명의 일 실시예에 따른 이미지 처리 시스템의 구성을 개략적으로 도시한 블록도이다.
도 3b는 본 발명의 일 실시예에 따른 이미지 복원 시스템의 구성을 개략적으로 도시한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 이미지 처리 시스템이 수행하는 과정을 도시하고 있는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 이미지 처리 시스템에 의해 처리대상 이미지 상의 픽셀이 처리되어 그에 상응하는 변환 이미지 상의 픽셀 값이 설정되는 예를 도시한 도면이다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 2는 본 발명의 일 실시예에 따른 이미지 처리 시스템(100) 및 이미지 복원 시스템(200)의 동작을 개략적으로 도시한 도면이다. 도 2를 참조하면, 본 발명의 기술적 사상에 따른 이미지 처리 방법을 구현하기 위하여 이미지 처리 시스템(100) 및/또는 이미지 복원 시스템(200)이 구비될 수 있다.
상기 이미지 처리 시스템(100)은 소정의 처리대상 이미지(10)를 처리하여 그에 상응하는 변환 이미지(20)를 생성할 수 있으며, 상기 이미지 복원 시스템(200)은 생성된 변환 이미지(20)를 다시 상기 처리 대상 이미지(10)로 복원할 수 있다.
상기 처리대상 이미지(10)는 인코딩 전의 원본 이미지를 의미할 수 있다. 한편, 상기 처리대상 이미지는 그에 포함된 각각의 픽셀이 색상 값을 가지는 형식의 이미지일 수 있다. 각 픽셀의 색상 값은 예를 들어, RGB 색 모델이나 YCbCr 색 모델, HIS 색 모델, CMYK 색 모델에 의해 표현되는 수치일 수 있다. 예를 들어, 상기 처리대상 이미지(10)는 디지털 카메라나 이미지 스캐너의 이미지 센서로부터 최소한으로 처리한 데이터인 로우 이미지(raw image)일 수 있다.
이하에서는 상기 처리대상 이미지(10)에 포함된 각 픽셀의 속성이 해당 픽셀의 색상 값이 RGB 색 모델로 표현된 경우를 예로 들어 설명하지만, 본 발명의 기술적 사상이 다른 색 모델이나 다른 속성에 대하여도 마찬가지로 적용될 수 있음은 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 용이하게 이해할 수 있을 것이다.
한편, 상기 변환 이미지(20)는 상기 이미지 처리 시스템(100)에 의해 생성되는 결과물로서, 상기 처리대상 이미지(10)와 동일한 내용을 다른 형식으로 표현하는 이미지일 수 있다.
도 2에 도시된 바와 같이, 상기 변환 이미지(20)는 컬러 팔레트 파트(21), 비트맵 파트(22), 예외 버퍼 파트(23)를 포함할 수 있다. 상기 컬러 팔레트 파트(21)는 후술하는 바와 같은 컬러 팔레트가 기록된 부분이며, 상기 비트맵 파트(22)는 상기 처리 대상 이미지에 포함된 각 픽셀에 상응하는 상기 변환 이미지 상의 픽셀 값이 기록된 부분이며, 상기 예외 버퍼 파트(23)는 후술하는 바와 같은 예외 버퍼에 저장된 색상 값이 기록된 부분일 수 있다.
실시예에 따라서는, 상기 변환 이미지(20)는 비트맵 파트(22)만을 포함하는독립된 파일의 형태로 생성되며, 컬러 팔레트 파트(21) 및/또는 예외 버퍼 파트(23)는 별도의 파일(예를 들면 메타 파일 등)의 형태로 존재하도록 구현될 수도 있다.
상기 이미지 처리 시스템(100) 및/또는 상기 이미지 복원 시스템(200)은 소정의 데이터 프로세싱 장치(예를 들면, 컴퓨터, 모바일 단말기 등)에 설치되어, 상기 데이터 프로세싱 장치에 구비된 하드웨어 및 본 발명의 기술적 사상을 구현하도록 정의되는 소정의 소프트웨어 코드와 유기적으로 결합되는 구성을 의미할 수 있다.
도 3a는 본 발명의 일 실시예에 따른 이미지 처리 시스템(100)의 구성을 개략적으로 도시한 블록도이며, 도 3b는 본 발명의 일 실시예에 따른 이미지 복원 시스템(200)의 구성을 개략적으로 도시한 블록도이다.
도 3a에 도시된 바와 같이, 본 발명의 일 실시예에 따른 이미지 처리 시스템(100)은 선택모듈(110), 팔레트모듈(120), 제어모듈(130), 생성모듈(140)을 포함할 수 있으며, 도 3b에 도시된 바와 같이, 본 발명의 일 실시예에 따른 이미지 복원 시스템(200)은 입력모듈(210), 복원모듈(220)을 포함할 수 있다.
본 발명의 실시예에 따라서는, 상술한 구성요소들 중 일부 구성요소는 반드시 본 발명의 구현에 필수적으로 필요한 구성요소에 해당하지 않을 수도 있으며, 또한 실시예에 따라 상기 이미지 처리 시스템(100) 및/또는 상기 이미지 복원 시스템(200)은 이보다 더 많은 구성요소를 포함할 수도 있음은 물론이다.
상기 이미지 처리 시스템(100) 및 이미지 복원 시스템(200)은 본 발명의 기술적 사상을 구현하기 위해 필요한 하드웨어 리소스(resource) 및/또는 소프트웨어를 구비할 수 있으며, 반드시 하나의 물리적인 구성요소를 의미하거나 하나의 장치를 의미하는 것은 아니다. 즉, 상기 이미지 처리 시스템(100) 및 이미지 복원 시스템(200)은 본 발명의 기술적 사상을 구현하기 위해 구비되는 하드웨어 및/또는 소프트웨어의 논리적인 결합을 의미할 수 있으며, 필요한 경우에는 서로 이격된 장치에 설치되어 각각의 기능을 수행함으로써 본 발명의 기술적 사상을 구현하기 위한 논리적인 구성들의 집합으로 구현될 수도 있다. 또한, 상기 이미지 처리 시스템(100) 및 이미지 복원 시스템(200)은 본 발명의 기술적 사상을 구현하기 위한 각각의 기능 또는 역할별로 별도로 구현되는 구성들의 집합을 의미할 수도 있다. 예컨대 상기 선택모듈(110), 팔레트모듈(120), 제어모듈(130) 및/또는 생성모듈(140)이나 상기 입력모듈(210) 및/또는 상기 복원모듈(220)은 서로 다른 물리적 장치에 위치할 수도 있고, 동일한 물리적 장치에 위치할 수도 있다. 또한, 구현 예에 따라서는 상기 선택모듈(110), 팔레트모듈(120), 제어모듈(130) 및/또는 생성모듈(140)이나 상기 입력모듈(210) 및/또는 상기 복원모듈(220) 등 각각의 개별모듈을 구성하는 요소들 역시 서로 다른 물리적 장치에 위치하고, 서로 다른 물리적 장치에 위치한 요소들이 서로 유기적으로 결합되어 각각의 개별 모듈이 수행하는 기능을 실현할 수도 있다.
또한, 본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
먼저 도 3a를 참조하면, 상기 제어모듈(130)은 상기 이미지 처리 시스템(100)에 포함된 다른 구성들(예를 들면, 상기 선택모듈(110), 팔레트모듈(120) 및/또는 생성모듈(140) 등)의 기능 및/또는 리소스를 제어할 수 있다.
상기 선택모듈(110)은 처리대상 이미지(10)에 포함된 각 픽셀의 색상 값 중 N개를 인덱스 컬러로 선택할 수 있으며, 상기 팔레트모듈(120)은 선택된 N개의 인덱스 컬러를 포함하는 컬러 팔레트(color palette)를 생성할 수 있다. 한편, N은 2 이상의 정수로서, 미리 정의되어 있는 값일 수 있다.
상기 컬러 팔레트는 복수의 인덱스 컬러 및 각각의 인덱스 컬러에 상응하는 인덱스 값을 포함하는 테이블일 수 있으며, 색상 참조 테이블 등의 명칭으로 불릴 수도 있다.
한편, 상기 컬러 팔레트에는 상기 인덱스 컬러에 관한 항목(즉, 인덱스 컬러 및 그에 상응하는 인덱스의 쌍)만을 포함할 수도 있지만, 구현 예에 따라서는 상기 컬러 팔레트는 상기 인덱스 컬러 이외의 다른 색상 값에 관한 항목(즉, 인덱스와 색상 값의 쌍)이 더 포함될 수도 있다. 예를 들어, 상기 팔레트 모듈(120)은 상기 컬러 팔레트에 상기 처리대상 이미지(10)를 구성하는 모든 색상 값에 관한 항목이 포함되도록 상기 컬러 팔레트를 구성할 수도 있다. 하지만 이 경우에도 상기 인덱스 컬러는 상기 선택모듈(110)에 의해 선택된 N개의 색상 값일 수 있다.
상기 선택모듈(110)은 상기 처리대상 이미지(10)에 포함된 각 픽셀을 탐색하여 상기 처리대상 이미지(10)를 구성하는 모든 색상 값을 파악한 후 그 중 일부(즉, N 개)를 인덱스 컬러로 선택할 수 있다.
상기 선택모듈(110)이 N개의 인덱스 컬러를 선택하는 방법은 다양할 수 있다. 예를 들어, 상기 선택모듈(110)은 상기 처리대상 이미지(10)를 구성하는 색상 값 중 임의로 N개를 선택할 수도 있으며, 상기 처리대상 이미지(10)에 포함된 각 픽셀을 탐색하면서 등장 순서가 빠른 N개의 색상 값을 선택할 수도 있다.
또한, 일 실시예에서, 상기 선택모듈(110)은 상기 처리대상 이미지(10)에 포함된 각 픽셀의 색상 값 별 빈도수를 산출하고, 빈도수 순으로 상기 처리대상 이미지를 구성하는 색상 값을 정렬하고, 빈도수가 가장 높은 N개의 색상 값을 상기 N개의 인덱스 컬러로 선택할 수도 있다. 이렇게 함으로써 상기 이미지 처리 시스템(100)은 최종 결과물인 변환 이미지(20)의 크기를 최소화할 수 있는데, 이렇게 되는 이유는 후술하는 바에 의해 명확해질 것이다.
상기 처리대상 이미지(10)가 인덱스 컬러의 개수(즉, N) 이하의 색상으로 구성되는 경우에는 종래의 인덱스 컬러 방식(즉, 모든 픽셀의 픽셀 값이 컬러 팔레트 내의 인덱스 값을 가지는 방식)으로 변환하면 되므로 본 발명의 기술적 사상은 상기 처리대상 이미지(10)가 N보다 많은 색상을 구성되는 경우에 적용될 수 있다. 예를 들어, 인덱스 컬러의 개수가 255인 경우, 상기 처리대상 이미지(10)는 512가지의 색상으로 구성되어 종래의 인덱스 컬러 방식에 의해서는 화질의 손실 없이 표현될 수 없는 이미지일 수 있다.
상기 제어모듈(130)은 상기 처리대상 이미지(10) 각각에 상응하는 변환 이미지(20) 상의 픽셀 값을 설정할 수 있는데, 이하에서 도 4를 주로 참조하고 도 5를 보조적으로 참조하여, 이에 대하여 설명하기로 한다.
도 4는 상기 제어모듈(130)이 수행하는 과정을 도시하고 있는 흐름도이다. 도 4를 참조하면, 상기 제어모듈(130)은 상기 처리대상 이미지에 포함된 각각의 처리대상 픽셀(P)에 대하여, 이하의 과정을 수행할 수 있다(S100).
상기 제어모듈(130)은 상기 처리대상 픽셀(P)의 색상 값이 상기 컬러 팔레트 내의 상기 N개의 인덱스 컬러 중 어느 하나인지 여부를 판단할 수 있다(S110).
만약 상기 처리대상 픽셀(P)의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나인 경우에는, 상기 처리대상 픽셀(P)에 상응하는 변환 이미지 상의 픽셀 값을 상기 처리대상 픽셀(P)의 색상 값을 가리키는 상기 컬러 팔레트 상의 인덱스 값으로 설정할 수 있다(S120, S130).
만약 상기 처리대상 픽셀(P)의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나가 아닌 경우에는 상기 처리대상 픽셀(P)에 상응하는 변환 이미지 상의 픽셀 값을 소정의 예외 값으로 설정하고(S140), 상기 처리대상 픽셀(P)의 색상 값을 예외 버퍼에 저장할 수 있다(S150).
상기 예외 버퍼는 상기 예외 값(또는 예외 인덱스)에 대응되는 실제 픽셀 색상 값을 저장할 수 있는 수단이면 족하고, 물리적으로는 컬러 팔레트에 포함되거나 물리적으로 연속되게 예외 값에 대응되는 픽셀 색상 값이 저장되어도 무방하다.
한편, 상기 제어모듈(130)은 상기 처리대상 픽셀(P)의 색상 값이 상기 N개의 인덱스 컬러 중 어디에도 해당하지 않는 경우가 발생할 때마다, 순차적으로 상기 예외 버퍼에 처리대상 픽셀의 색상 값을 저장할 수 있다. 즉 상기 제어모듈(130)은 처리대상 픽셀 들을 차례로 처리하다가 색상 값이 상기 N개의 인덱스 컬러 중 어디에도 해당하지 않는 경우(즉, 예외 경우)가 최초로 발생하면 예외 버퍼의 첫 위치에 처리대상 픽셀의 색상 값을 저장하고, 다음 예외 경우가 발생하면 예외 버퍼의 다음 위치에 처리대상 픽셀의 색상 값을 저장하는 방식으로 순차적으로 상기 예외 버퍼에 처리대상 픽셀의 색상 값을 저장할 수 있다.
한편, 일 실시예에서, N은 2m-1(여기서, m은 자연수)이며, 상기 인덱스 컬러에 상응하는 인덱스는 0부터 2m-2일 수 있으며, 이 경우 상기 예외 값은 2m-1일 수 있다.
일 실시예에서, 상기 변환 이미지(20)의 각 픽셀을 1byte로 표현할 수 있으며, 이를 위하여, m은 8로 설정될 수 있다. 이 경우, N은 255이며, 상기 인덱스 컬러의 상기 컬러 팔레트 상의 인덱스 값은 0~254일 수 있다. 한편, 예외 값은 255일 수 있다. 상술한 바와 같이, 상기 제어모듈(130)은 각각의 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 인덱스 컬러의 인덱스 값(0~254) 또는 예외 값(255) 중 어느 하나로 설정하므로 상기 변환 이미지(20) 상의 각 픽셀이 1byte로 표현될 수 있다. 하지만 이에 한정되는 것은 아니며, m은 16이나 32, 64 등으로 설정될 수도 있다.
도 5는 상기 제어모듈(130)에 의해 처리대상 이미지 상의 픽셀이 처리되어 그에 상응하는 변환 이미지 상의 픽셀 값이 설정되는 예를 도시한 도면이다. 도 5(a)는 처리대상 이미지에 포함된 일부 픽셀의 RGB 값을 도시하고 있으며, 도 5(b)는 상기 선택모듈(110) 및 팔레트모듈(120)에 의해 생성된 컬러 팔레트의 일부를 도시하고 있으며, 도 5(c)는 상기 제어모듈(130)에 의해 설정된 상기 변환 이미지 상의 일부 픽셀의 픽셀 값을 도시하고 있다.
도 5의 예에서, 처리대상 이미지의 픽셀(P1)의 RGB 값(255, 182, 103)은 컬러 팔레트에 포함된 항목(i1)이므로 상기 제어모듈(130)은 상기 처리대상 픽셀(P1)에 상응하는 변환 이미지 상의 픽셀(Q1)의 픽셀 값을 상기 항목(i1)의 인덱스 값(109)으로 설정할 수 있다.
한편, 처리대상 이미지의 픽셀(P2)의 RGB 값(255, 182, 123)에 상응하는 상기 컬러 팔레트 상의 인덱스(i2)는 256으로서 인덱스 컬러(즉, 인덱스 0 내지 254에 상응하는 색상 값) 중 어디에서 해당하지 않으므로 상기 제어모듈(130)은 처리대상 이미지의 픽셀(P2)에 상응하는 변환 이미지 상의 픽셀(Q2)의 픽셀 값을 예외 값(255)로 설정하고, 예외 버퍼(E2)에 처리대상 이미지의 픽셀(P2)의 RGB 값(255, 182, 123)을 저장할 수 있다.
또한, 처리대상 이미지의 픽셀(P3)의 RGB 값(255, 255, 103)에 상응하는 상기 컬러 팔레트 상의 인덱스(i3)는 257로서 인덱스 컬러 중 어디에서 해당하지 않으므로 상기 제어모듈(130)은 처리대상 이미지의 픽셀(P3)에 상응하는 변환 이미지 상의 픽셀(Q3)의 픽셀 값을 예외 값(255)로 설정하고, 예외 버퍼(E2)의 다음 위치(E3)에 처리대상 이미지의 픽셀(P3)의 RGB 값(255, 255, 103)을 순차적으로 저장할 수 있다.
한편, 상술한 바와 같이, 상기 N개의 인덱스 컬러는 상기 처리대상 이미지를 구성하는 색상 값 중 상기 처리대상 이미지 상에서 등장 빈도가 매우 높은 색상 값만으로 구성되므로 상기 변환 이미지에 포함된 각 픽셀 값의 대부분은 상기 컬러 팔레트 상의 인덱스 값을 가지며, 상기 변환 이미지 중 매우 작은 개수의 픽셀만이 상기 예외 값을 가지게 된다. 따라서, 예외 버퍼에 저장되는 색상 값 역시 매우 작은 개수(예외 값을 가지는 상기 변환 이미지 내의 픽셀의 수)가 된다.
따라서, 본 발명의 기술적 사상에 따르면, 컬러 팔레트를 이용함으로써 RGB 형식의 처리대상 이미지와 동일한 정보를 가지면서도 그 크기를 매우 감소시킬 수 있는 효과가 있다. 또한 처리대상 이미지를 구성하는 색상 값 중 컬러 팔레트에 포함되지 않는 색상 값 역시 손실되는 것이 아니라 별도의 예외 버퍼에 저장되므로 처리대상 이미지의 화질을 손상시키지 않는 효과가 있다.
한편, 상기 처리대상이미지에 포함된 픽셀의 총 개수를 A, 상기 처리대상 이미지에 포함된 각 픽셀 중 상기 N개의 인덱스 컬러 중 어느 하나를 색상 값으로 가지는 픽셀의 총 개수를 B라고 하면, 일 실시예에서, 상기 제어모듈은, A 대비 B의 비율이 소정의 한계 비율(예를 들면, 50%) 이상인 경우에, 도 4에 도시된 과정을 수행할 수 있다. A 대비 B의 비율이 너무 낮은 경우, 본 발명의 기술적 사상에 의한 이미지 크기 감소의 효율이 낮을 수 있기 때문이다.
다시 도 3a를 참조하면, 상기 생성모듈(140)은 상기 변환 이미지(20)를 생성할 수 있다.
상기 변환 이미지(20)는 상기 처리 대상 이미지에 포함된 각 픽셀에 상응하는 상기 변환 이미지 상의 픽셀 값이 기록된 비트맵 파트(22)를 포함할 수 있으며, 구현 예에 따라서 상기 컬러 팔레트가 기록된 컬러 팔레트 파트(21) 및/또는 상기 예외 버퍼에 저장된 색상 값이 기록된 예외 버퍼 파트(23)를 더 포함할 수도 있다.
상기 변환 이미지가 비트맵 파트(22)만을 포함하는 구현 예에서는 상기 컬러 팔레트 파트(21) 및/또는 상기 예외 버퍼 파트(23)는 별도의 파일 또는 저장소에 저장되어 있을 수 있다.
한편, 일 실시예에서, 상기 생성모듈(140)은 상기 컬러 팔레트 파트, 상기 비트맵 파트 및 상기 예외 파트를 압축하여 상기 변환 이미지를 생성할 수도 있다.
이하에서는 도 3b를 참조하여 상기 이미지 복원 시스템(200)의 구성에 대하여 설명하기로 한다.
도 3b를 참조하면, 상기 입력모듈(210)은 복원 대상인 상기 이미지 처리 시스템(100)에 의해 생성된 상기 변환 이미지(20)를 입력받을 수 있다.
상기 복원모듈(220)은 상기 변환 이미지(20)에 포함된 각각의 복원대상 픽셀에 대하여 아래와 같은 과정을 거쳐 상기 변환 이미지(20)를 상기 처리대상 이미지(10)로 복원할 수 있다.
먼저 상기 복원모듈(220)은 상기 복원대상 픽셀이 상기 예외 값(예를 들어, 255)인지 여부를 판단할 수 있다.
만약, 상기 복원대상 픽셀 값이 상기 예외 값인 경우에는 상기 예외 버퍼로부터 상기 복원대상 픽셀에 상응하는 색상 값을 로딩할 수 있다. 앞서 설명한 바와 같이, 상기 이미지 처리 시스템(100)은 처리대상 픽셀의 처리 순서에 따라 순차적으로 상기 예외 버퍼에 색상 값을 기록하므로 상기 복원모듈(220) 역시 상기 이미지 처리 시스템(100)이 수행한 픽셀 처리 순서에 따라 상기 복원대상 픽셀들을 처리하고 상기 복원대상 픽셀 값이 예외 값인 경우가 발생할 때마다 순차적으로 상기 예외 버퍼에서 색상 값을 로딩할 수 있다. 한편, 상기 복원모듈(220)은 로딩된 색상 값을 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단할 수 있다.
만약 상기 복원대상 픽셀 값이 상기 N개의 인덱스 컬러 중 어느 하나에 상응하는 상기 컬러 팔레트 상의 인덱스 값인 경우에는 상기 인덱스 값에 상응하는 인덱스 컬러를 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단할 수 있다.
이와 같은 방식으로 상기 변환 이미지(20)에 포함된 각각의 복원대상 픽셀의 색상 값을 모두 판단하고 나면, 상기 복원모듈(220)은 판단한 각각의 복원대상 픽셀의 색상 값을 가지고 상기 처리대상 이미지를 복원할 수 있다.
한편, 구현 예에 따라서, 상기 이미지 처리 시스템(100) 및/또는 상기 이미지 복원 시스템(200)은 프로세서 및 상기 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 포함할 수 있다. 상기 프로세서는 싱글 코어 CPU혹은 멀티 코어 CPU를 포함할 수 있다. 메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치, 또는 기타 비휘발성 고체상태 메모리 장치와 같은 비휘발성 메모리를 포함할 수도 있다. 프로세서 및 기타 구성 요소에 의한 메모리로의 액세스는 메모리 컨트롤러에 의해 제어될 수 있다. 여기서, 상기 프로그램은, 프로세서에 의해 실행되는 경우, 본 실시예에 따른 이미지 처리 시스템(100)으로 하여금, 상술한 이미지 처리 방법을 수행하도록 할 수 있다.
한편, 본 발명의 실시예에 따른 이미지 처리 방법 및/또는 상기 이미지 복원 방법은 컴퓨터가 읽을 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있으며, 본 발명의 실시예에 따른 제어 프로그램 및 대상 프로그램도 컴퓨터로 판독 가능한 기록 매체에 저장될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터로 읽을 수 있는 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (16)

  1. 처리대상 이미지에 포함된 각 픽셀의 색상 값 중 N개(여기서, N은 2 이상의 정수)인 인덱스 컬러 및 각각의 인덱스 컬러에 상응하는 인덱스 값을 포함하는 컬러 팔레트(color palette)를 생성하는 팔레트모듈; 및
    상기 처리대상 이미지에 포함된 각각의 처리대상 픽셀에 대하여,
    상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나인 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 처리대상 픽셀의 색상 값을 가리키는 상기 컬러 팔레트 상의 인덱스 값으로 설정하고,
    상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나가 아닌 경우에는 상기 처리대상 픽셀에 상응하는 상기 변환 이미지 상의 픽셀 값을 소정의 예외 값으로 설정하고, 상기 처리대상 픽셀의 색상 값을 예외 버퍼에 저장하는 제어모듈을 포함하는 이미지 처리 시스템.
  2. 제1항에 있어서, 상기 이미지 처리 시스템은,
    상기 처리대상 이미지에 포함된 각 픽셀의 색상 값 별 빈도수를 산출하고,
    빈도수가 가장 높은 N개의 색상 값을 상기 N개의 인덱스 컬러로 선택하는 선택모듈을 더 포함하는 이미지 처리 시스템.
  3. 제1항에 있어서,
    상기 제어모듈은, A 대비 B의 비율이 소정의 한계 비율 이상인 경우에,
    상기 처리대상 이미지에 포함된 각각의 처리대상 픽셀에 대하여,
    상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나인 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 처리대상 픽셀의 색상 값을 가리키는 상기 컬러 팔레트 상의 인덱스 값으로 설정하고,
    상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나가 아닌 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 예외 값으로 설정하고, 상기 처리대상 픽셀의 색상 값을 상기 예외 버퍼에 기록하는 이미지 처리 시스템-여기서, A는 상기 처리 대상 픽셀의 총 개수이며, B는 상기 처리대상 이미지에 포함된 각 픽셀 중 상기 N개의 인덱스 컬러 중 어느 하나를 색상 값으로 가지는 픽셀의 총 개수임.
  4. 제1항에 있어서,
    N은 2m-1(여기서, m은 자연수)이며, 상기 예외 값은 2m-1인 것을 특징으로 하는 이미지 처리 시스템.
  5. 제1항에 있어서,
    상기 이미지 처리 시스템은,
    상기 컬러 팔레트가 기록된 컬러 팔레트 파트, 상기 처리 대상 이미지에 포함된 각 픽셀에 상응하는 상기 변환 이미지 상의 픽셀 값이 기록된 비트맵 파트 및 상기 예외 버퍼에 저장된 색상 값이 기록된 예외 버퍼 파트를 포함하는 변환 이미지를 생성하는 생성모듈을 더 포함하는 이미지 처리 시스템.
  6. 제5항에 있어서,
    상기 생성모듈은,
    상기 컬러 팔레트 파트, 상기 비트맵 파트 및 상기 예외 파트를 압축하여 상기 변환 이미지를 생성하는 이미지 처리 시스템.
  7. 변환 이미지를 처리대상 이미지로 복원하는 시스템에 있어서,
    상기 변환 이미지-상기 변환 이미지에 포함된 복원대상 픽셀들은 N개의 인덱스 컬러에 대응되는 인덱스 값과 인덱스 컬러에 대응되지 않는 예외 값을 갖는 이미지 임-를 입력받는 입력모듈; 및
    상기 변환 이미지에 포함된 각각의 복원대상 픽셀에 대하여,
    상기 복원대상 픽셀 값이 상기 예외 값인 경우에는, 상기 예외 값에 대응되는 상기 처리대상 이미지의 색상 값이 저장된 예외 버퍼의 상기 복원대상 픽셀에 상응하는 색상 값을 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단하고,
    상기 복원대상 픽셀 값이 상기 인덱스 컬러 중 어느 하나에 상응하는 컬러 팔레트 상의 인덱스 값인 경우에는 상기 인덱스 값에 상응하는 인덱스 컬러를 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단하는 복원모듈을 포함하는 이미지 복원 시스템.
  8. (a) 이미지 처리 시스템이, 처리대상 이미지에 포함된 각 픽셀의 색상 값 중 N개(여기서, N은 2 이상의 정수임)인 인덱스 컬러를 포함하는 컬러 팔레트(color palette)를 생성하는 단계; 및
    (b) 상기 이미지 처리 시스템이, 상기 처리대상 이미지를 처리하는 단계를 포함하되,
    상기 (b) 단계는, 상기 처리대상 이미지에 포함된 각각의 처리대상 픽셀에 대하여,
    (b-1) 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나인 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 상기 처리대상 픽셀의 색상 값을 가리키는 상기 컬러 팔레트 상의 인덱스 값으로 설정하는 단계; 및
    (b-2) 상기 처리대상 픽셀의 색상 값이 상기 N개의 인덱스 컬러 중 어느 하나가 아닌 경우에는 상기 처리대상 픽셀에 상응하는 변환 이미지 상의 픽셀 값을 소정의 예외 값으로 설정하고, 상기 처리대상 픽셀의 색상 값을 예외 버퍼에 저장하는 단계를 포함하는 이미지 처리 방법.
  9. 제8항에 있어서, 상기 이미지 처리 방법은,
    상기 처리대상 이미지에 포함된 각 픽셀의 색상 값 별 빈도수를 산출하는 단계; 및,
    빈도수가 가장 높은 N개의 색상 값을 상기 N개의 인덱스 컬러로 선택하는 단계를 더 포함하는 이미지 처리 방법.
  10. 제8항에 있어서,
    상기 (b-1) 단계 및 상기 (b-2) 단계는, A 대비 B의 비율이 소정의 한계 비율 이상인 경우에 수행되는 것을 특징으로 하는 이미지 처리 방법-여기서, A는 상기 처리 대상 픽셀의 총 개수이며, B는 상기 처리대상 이미지에 포함된 각 픽셀 중 상기 N개의 인덱스 컬러 중 어느 하나를 색상 값으로 가지는 픽셀의 총 개수임.
  11. 제8항에 있어서,
    상기 이미지 처리 방법은,
    (c) 상기 컬러 팔레트가 기록된 컬러 팔레트 파트, 상기 처리 대상 이미지에 포함된 각 픽셀에 상응하는 상기 변환 이미지 상의 픽셀 값이 기록된 비트맵 파트 및 상기 예외 버퍼에 저장된 색상 값이 기록된 예외 버퍼 파트를 포함하는 변환 이미지를 생성하는 단계를 더 포함하는 이미지 처리 방법.
  12. 제11항에 있어서,
    상기 (c) 단계는,
    상기 컬러 팔레트 파트, 상기 비트맵 파트 및 상기 예외 파트를 압축하여 상기 변환 이미지를 생성하는 단계를 포함하는 이미지 처리 방법.
  13. 변환 이미지를 처리대상 이미지로 복원하는 이미지 복원 방법으로서,
    (1) 이미지 복원 시스템이, 상기 변환 이미지-상기 변환 이미지에 포함된 복원대상 픽셀들은 N개의 인덱스 컬러에 대응되는 인덱스 값과 인덱스 컬러에 대응되지 않는 예외 값을 갖는 이미지 임-를 입력받는 단계; 및
    (2) 상기 이미지 복원 시스템이, 상기 변환 이미지를 상기 처리대상 이미지로 복원하는 단계를 포함하되,
    상기 (2) 단계는, 상기 이미지 복원 시스템이, 상기 변환 이미지에 포함된 각각의 복원대상 픽셀에 대하여,
    (2-1) 상기 복원대상 픽셀 값이 상기 예외 값인 경우에는, 상기 예외 값에 대응되는 상기 처리대상 이미지의 색상 값이 저장된 예외 버퍼의 상기 복원대상 픽셀에 상응하는 색상 값을 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단하는 단계; 및
    (2-2) 상기 복원대상 픽셀 값이 상기 인덱스 컬러 중 어느 하나에 상응하는 컬러 팔레트 상의 인덱스 값인 경우에는 상기 인덱스 값에 상응하는 인덱스 컬러를 상기 복원대상 픽셀에 상응하는 상기 처리대상 이미지 상의 픽셀의 색상 값으로 판단하는 단계를 포함하는 이미지 복원 방법.
  14. 데이터 처리장치에 설치되며 제8항 내지 제13항 중 어느 한 항에 기재된 방법을 수행하기 위한 기록매체에 저장된 컴퓨터 프로그램.
  15. 이미지 처리 시스템으로서,
    프로세서; 및
    상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며,
    상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 이미지 처리 시스템이 제8항 내지 제12항 중 어느 한 항에 기재된 방법을 수행하도록 하는 이미지 처리 시스템.
  16. 이미지 복원 시스템으로서,
    프로세서; 및
    상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며,
    상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 이미지 처리 시스템이 제13항에 기재된 방법을 수행하도록 하는 이미지 복원 시스템.
KR1020140146305A 2014-02-25 2014-10-27 이미지 처리 시스템, 이미지 복원 시스템 및 그 방법 KR101652740B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140146305A KR101652740B1 (ko) 2014-10-27 2014-10-27 이미지 처리 시스템, 이미지 복원 시스템 및 그 방법
US14/631,769 US9560364B2 (en) 2014-02-25 2015-02-25 Encoding image data with quantizing and inverse-quantizing pixel values

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140146305A KR101652740B1 (ko) 2014-10-27 2014-10-27 이미지 처리 시스템, 이미지 복원 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20160049620A true KR20160049620A (ko) 2016-05-10
KR101652740B1 KR101652740B1 (ko) 2016-09-02

Family

ID=56020779

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140146305A KR101652740B1 (ko) 2014-02-25 2014-10-27 이미지 처리 시스템, 이미지 복원 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR101652740B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210060162A (ko) * 2019-11-18 2021-05-26 김남희 빅데이터 분석 기반 디지털 이미지 생성 방법 및 이를 실행하는 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1141625A (ja) * 1997-07-17 1999-02-12 Mitsubishi Electric Corp カラー動画像データ圧縮方法
JP2001076120A (ja) * 1999-08-31 2001-03-23 Fuji Xerox Co Ltd 画像処理装置及び画像処理方法
KR20050027442A (ko) * 2003-09-15 2005-03-21 (주) 멀티비아 모바일 디바이스용 정지영상 압축 방법
JP2012085029A (ja) * 2010-10-08 2012-04-26 Fujitsu Semiconductor Ltd 画像処理装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1141625A (ja) * 1997-07-17 1999-02-12 Mitsubishi Electric Corp カラー動画像データ圧縮方法
JP2001076120A (ja) * 1999-08-31 2001-03-23 Fuji Xerox Co Ltd 画像処理装置及び画像処理方法
KR20050027442A (ko) * 2003-09-15 2005-03-21 (주) 멀티비아 모바일 디바이스용 정지영상 압축 방법
JP2012085029A (ja) * 2010-10-08 2012-04-26 Fujitsu Semiconductor Ltd 画像処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210060162A (ko) * 2019-11-18 2021-05-26 김남희 빅데이터 분석 기반 디지털 이미지 생성 방법 및 이를 실행하는 장치

Also Published As

Publication number Publication date
KR101652740B1 (ko) 2016-09-02

Similar Documents

Publication Publication Date Title
RU2762005C2 (ru) Способ и устройство для того, чтобы кодировать и декодировать двумерные облака точек
US8977066B2 (en) Image compression using sub-resolution images
US11159790B2 (en) Methods, apparatuses, and systems for transcoding a video
KR102451595B1 (ko) 델타 컬러 압축을 위한 비트 패킹
EP2955919A2 (en) Decoding method, encoder, and decoder
CN105828081B (zh) 编码方法及编码装置
CN105430393B (zh) 一种图片处理方法、图片处理装置、图片处理平台以及存储介质
JP2019524007A (ja) 動画圧縮方法及び装置、並びにこれに対するコンピュータプログラム
CN111918065A (zh) 一种信息压缩/解压缩方法及装置
US8582876B2 (en) Hybrid codec for compound image compression
CN111294600A (zh) 一种视频序列帧的压缩方法、解压方法及装置
CN106303226A (zh) 图像处理方法及装置
US20100124353A1 (en) Robust Encoding of Metadata in Lossy Encoded Images
JP2015154363A (ja) 画像処理装置、画像処理方法及び画像形成装置
KR101100829B1 (ko) 이미지 데이터 무손실 압축 및 해제하는 시스템 및 방법.
KR101652740B1 (ko) 이미지 처리 시스템, 이미지 복원 시스템 및 그 방법
CN110191341B (zh) 一种深度数据的编码方法和解码方法
CN108668169B (zh) 图像信息处理方法及装置、存储介质
US10291911B2 (en) Classes of tables for use in image compression
KR20180035746A (ko) 문서 이미지를 최적화하는 방법, 장치 및 컴퓨터-판독가능 매체
CN115250351A (zh) 用于图像数据的压缩方法、解压方法及相关产品
CN107729387B (zh) 一种视频缩略图选取方法、存储介质及电子设备
KR101937718B1 (ko) 유효 픽셀 기반의 버스 프로토콜을 이용한 영상 처리 장치 및 방법
CN110119380B (zh) 一种可缩放矢量图文件的存储、读取方法及装置
US9560364B2 (en) Encoding image data with quantizing and inverse-quantizing pixel values

Legal Events

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