KR101286148B1 - 화상파일 생성장치, 화상처리장치, 화상파일 생성방법, 및 화상처리방법 - Google Patents

화상파일 생성장치, 화상처리장치, 화상파일 생성방법, 및 화상처리방법 Download PDF

Info

Publication number
KR101286148B1
KR101286148B1 KR1020127004839A KR20127004839A KR101286148B1 KR 101286148 B1 KR101286148 B1 KR 101286148B1 KR 1020127004839 A KR1020127004839 A KR 1020127004839A KR 20127004839 A KR20127004839 A KR 20127004839A KR 101286148 B1 KR101286148 B1 KR 101286148B1
Authority
KR
South Korea
Prior art keywords
image
tile
data
tile image
reference table
Prior art date
Application number
KR1020127004839A
Other languages
English (en)
Other versions
KR20120041769A (ko
Inventor
테츠고 이나다
아키오 오바
히로유키 세가와
Original Assignee
소니 컴퓨터 엔터테인먼트 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니 컴퓨터 엔터테인먼트 인코포레이티드 filed Critical 소니 컴퓨터 엔터테인먼트 인코포레이티드
Publication of KR20120041769A publication Critical patent/KR20120041769A/ko
Application granted granted Critical
Publication of KR101286148B1 publication Critical patent/KR101286148B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

제어부(100b)의 화상계층 생성부(120)는 하드디스크 드라이브(50)에 저장된 화상 데이터를 읽어내 복수의 해상도의 화상을 생성하여 계층화한다. 화상 분할부(122)는 각 계층의 화상을 타일화상으로 분할한다. 중복성 검출부(124)는 각 계층의 화상을 해석하여, 동일 계층 내 및 다른 계층간에서의 화상의 중복성을 검출한다. 타일화상 참조 테이블 작성부(126)는 중복성을 고려하여, 영역 번호와 타일 번호를 대응시킨 타일화상 참조 테이블을 작성한다. 화상파일 생성부(128)는 최종적으로 출력하는, 화상 데이터 및 타일화상 참조 테이블을 포함하는 화상파일을 생성한다.

Description

화상파일 생성장치, 화상처리장치, 화상파일 생성방법, 및 화상처리방법{IMAGE FILE GENERATION DEVICE, IMAGE PROCESSING DEVICE, IMAGE FILE GENERATION METHOD, AND IMAGE PROCESSING METHOD}
본 발명은 디스플레이에 표시하는 화상을 확대/축소, 또는 상하좌우로 이동시키는 화상 처리 기술에 관한 것이다.
게임 프로그램을 실행할 뿐만 아니라, 동영상을 재생할 수 있는 가정용 엔터테인먼트 시스템이 제안되어 있다. 이 가정용 엔터테인먼트 시스템에서는 GPU가 폴리곤을 이용한 3차원 화상을 생성한다(예를 들면 특허문헌 1 참조).
화상 표시의 목적을 막론하고, 화상을 어떻게 효율적으로 표시할지는 늘 중요한 문제가 된다. 특히 고정밀 화상을 고속으로 묘화하기 위해서는 다양한 연구가 필요하게 되는데, 예를 들면 텍스쳐 데이터를 별도로 보유하여 매핑을 효율적으로 실행하는 수법에 대하여 제안이 이루어지고 있다(예를 들면 비특허문헌 1 및 2 참조).
미국 특허공보 제6563999호
Sylvain Fefebvre, et. al., Unified Texture Management for Arbitrary Meshes, Repport de recherche, N5210, May 2004, Institut National De Recherche En Informatique Et En Automatique Martin Kraus, et. al., Adaptive Texture Maps, Graphics Hardware(2002), pp1-10, The Eurographics Association
화상이 고정밀화되어도 데이터 사이즈를 작게 억제하는 것, 고속으로 묘화하는 것은 화상을 응답성 좋게 표시하는 데 있어서 늘 중요한 과제이다. 또한 상술한 텍스쳐 매핑 등 데이터 구조를 연구하는 기술을 적용했을 경우, 표시화상의 데이터를 한 번 구축해 버리면, 화상의 일부 등을 갱신할 필요가 생겼을 경우에 처리가 번잡해지기 쉽다는 문제가 있었다.
본 발명은 이러한 과제를 감안하여 이루어진 것으로서, 그 목적은 압축 효율이 높은 화상 데이터의 생성, 표시를 실행하는 화상 처리 기술을 제공하는 것에 있다.
본 발명의 한 양태는 화상파일 생성장치에 관한 것이다. 이 화상파일 생성장치는 입력된 화상 데이터로부터, 다른 해상도의 복수의 화상 데이터를 생성하고, 해상도순으로 계층화하여 구성되는 계층 데이터를 생성하는 화상계층 생성부와, 계층 데이터를 구성하는 각 계층의 화상 데이터를 소정 사이즈의 타일화상으로 분할하는 화상 분할부와, 계층 데이터를 구성하는 각 계층의 화상 데이터의 분할 후의 각 영역과, 당해 영역을 묘화할 때에 이용하는 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 작성하는 타일화상 참조 테이블 작성부와, 타일화상의 데이터와 타일화상 참조 테이블을 포함하는 화상파일을 생성하는 화상파일 생성부를 구비한 것을 특징으로 한다.
본 발명의 다른 양태는 화상처리장치에 관한 것이다. 이 화상처리장치는 하나의 화상으로 다른 해상도의 화상 데이터를 소정 사이즈로 분할하여 이루어지는 타일화상의 데이터와, 화상 데이터를 해상도순으로 계층화한 계층 구조에 있어서의 각 화상 데이터의 분할 후의 각 영역과 당해 영역을 묘화할 때에 이용하는 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 포함하는 화상파일을 보유하는 기억장치와, 화상 평면상의 이동 및 해상도의 변경을 포함하는 표시영역 변경 요구를 사용자로부터 접수하는 입력정보 취득부와, 표시영역 변경 요구에 따라 새로 표시해야 할 영역을 묘화하는 데 필요한 타일화상의 데이터를, 타일화상 참조 테이블을 참조함으로써 특정하는 타일화상 특정부와, 특정한 타일화상의 데이터를 기억장치에서 읽어내, 새로 표시해야 할 영역을 묘화하는 표시화상 처리부를 구비한 것을 특징으로 한다.
본 발명의 또 다른 양태는 화상파일 생성방법에 관한 것이다. 이 화상파일 생성방법은 화상 데이터를 메모리에서 읽어내 다른 해상도의 복수의 화상 데이터를 생성하고, 해상도순으로 계층화하여 구성되는 계층 데이터를 생성하는 스텝과, 계층 데이터를 구성하는 각 계층의 화상 데이터를 소정 사이즈의 타일화상으로 분할하는 스텝과, 계층 데이터를 구성하는 각 계층의 화상 데이터의 분할 후의 각 영역과, 당해 영역을 묘화할 때에 이용하는 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 작성하는 스텝과, 타일화상의 데이터와 타일화상 참조 테이블을 포함하는 화상파일을 생성하여 메모리에 출력하는 스텝을 포함하는 것을 특징으로 한다.
본 발명의 또 다른 양태는 화상처리방법에 관한 것이다. 이 화상처리방법은 하나의 화상으로 다른 해상도의 화상 데이터를 소정 사이즈로 분할하여 이루어지는 타일화상의 데이터와, 화상 데이터를 해상도순으로 계층화한 계층 구조에 있어서의 각 화상 데이터의 분할 후의 각 영역과 당해 영역을 묘화할 때에 이용하는 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 포함하는 화상파일을 메모리에서 읽어내는 스텝과, 화상 평면상의 이동 및 해상도의 변경을 포함하는 표시영역 변경 요구를 사용자로부터 접수하는 스텝과, 표시영역 변경 요구에 따라 새로 표시해야 할 영역을 묘화하는 데 필요한 타일화상의 데이터를, 타일화상 참조 테이블을 참조함으로써 특정하는 스텝과, 특정한 타일화상의 데이터에 기초해서, 새로 표시해야 할 영역을 묘화하는 스텝을 포함하는 것을 특징으로 한다.
본 발명의 또 다른 양태는 화상파일의 데이터 구조에 관한 것이다. 이 데이터 구조는 화상의 적어도 일부를 디스플레이에 표시하기 위해 기억장치로부터 읽어내지는 화상파일의 데이터 구조로서, 하나의 화상으로 다른 해상도의 화상 데이터를 소정 사이즈로 분할하여 이루어지는 타일화상의 데이터;와, 화상 데이터를 해상도순으로 계층화한 계층 구조에 있어서의 각 화상 데이터의 분할 후의 각 영역과 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 타일화상 참조 테이블;을 대응시키고, 타일화상 참조 테이블은 하나의 타일화상의 데이터를 복수의 영역에 대응시키고, 화상파일은 타일화상 참조 테이블에 있어서 대응되지 않은 타일화상의 데이터를 포함하지 않는 것을 특징으로 한다.
한편, 이상의 구성 요소의 임의의 조합, 본 발명의 표현을 방법, 장치, 시스템, 컴퓨터 프로그램 등의 사이에서 변환한 것도 또한 본 발명의 양태로서 유효하다.
본 발명에 의하면, 폭넓은 해상도로 화상을 표시하기 위한 화상 데이터를 효율적으로 구축할 수 있는 화상처리장치를 제공할 수 있다.
도 1은 실시형태 1의 형태에 따른 화상처리 시스템의 사용 환경을 나타내는 도면이다.
도 2는 도 1의 화상처리 시스템에 적용할 수 있는 입력장치의 외관 구성을 나타내는 도면이다.
도 3은 실시형태 1에서 사용하는 화상 데이터의 계층 구조를 나타내는 도면이다.
도 4는 실시형태 1에서의 화상처리장치의 구성을 나타내는 도면이다.
도 5는 실시형태 1에서의 화상 데이터의 흐름을 모식적으로 나타내는 도면이다.
도 6은 실시형태 1에서의 화상 데이터의 미리읽기(prefetch) 처리를 설명하기 위한 도면이다.
도 7은 실시형태 1에서 계층 데이터를 표시하는 기능을 가지는 제어부의 구성을 상세하게 나타내는 도면이다.
도 8은 실시형태 1에서 이용하는 계층 데이터에 있어서의 각 계층의 화상을 모식적으로 나타내는 도면이다.
도 9는 도 8의 계층 데이터로부터 생성되는 화상 블록을 모식적으로 나타내는 도면이다.
도 10은 실시형태 1에서 표시 대상의 화상파일을 생성하는 기능을 가지는 제어부의 구성을 나타내는 도면이다.
도 11은 실시형태 1에서 화상에 중복성(冗長性;redundancy)이 있을 경우에 구축하는, 영역 번호와 타일화상의 데이터의 대응 관계의 예를 모식적으로 나타내는 도면이다.
도 12는 실시형태 1에서 화상에 중복성이 있을 경우에 구축하는, 영역 번호와 타일화상의 데이터의 대응 관계의 다른 예를 모식적으로 나타내는 도면이다.
도 13은 도 11 및 도 12에서 설명한 영역 번호와 타일 번호의 대응 관계를 기재한 타일화상 참조 테이블의 예를 나타내는 도면이다.
도 14는 실시형태 1에서 제어부가 화상파일을 생성하는 처리 순서를 나타내는 플로우 차트이다.
도 15는 실시형태 1에서 제어부가 화상파일을 표시하기 위한 처리 순서를 나타내는 플로우 차트이다.
도 16은 실시형태 1에서의 타일화상 참조 테이블의 중복성에 대하여 설명하는 도면이다.
도 17은 실시형태 2에서 화상을 수정하는 기능을 가지는 제어부의 구성을 나타내는 도면이다.
도 18은 본 실시형태 2에서 사용자가 화상을 수정할 때의 처리 순서를 나타내는 플로우 차트이다.
도 19는 본 실시형태 3에서 화상 작성 작업 전후의 표시화상, 계층 데이터, 타일화상 데이터의 변화를 모식적으로 나타내는 도면이다.
[실시형태 1]
본 실시형태에서 처리 대상으로 삼는 화상의 데이터는 원화상을 복수 단계로 축소하여 생성한 다른 해상도의 화상으로 이루어지는 계층 구조를 가진다. 각 계층의 화상은 하나 또는 복수의 타일화상으로 분할된다. 예를 들어 가장 해상도가 낮은 화상은 1개의 타일화상으로 구성되고, 가장 해상도가 높은 원화상은 가장 많은 수의 타일화상으로 구성된다. 화상 표시시에는 묘화에 사용하고 있는 타일화상을, 표시화상이 소정의 해상도가 되었을 때에 다른 계층의 타일화상으로 전환함으로써, 확대 표시 또는 축소 표시를 신속히 행한다.
먼저, 이러한 계층 구조를 가지는 화상의 기본적인 표시 양태에 대하여 설명한다. 도 1은 본 발명의 실시형태를 적용할 수 있는 화상처리 시스템(1)의 사용 환경을 나타낸다. 화상처리 시스템(1)은 화상 처리 소프트웨어를 실행하는 화상처리장치(10)와, 화상처리장치(10)에 의한 처리 결과를 출력하는 표시장치(12)를 구비한다. 표시장치(12)는 화상을 출력하는 디스플레이 및 음성을 출력하는 스피커를 가지는 텔레비전이어도 된다. 표시장치(12)는 화상처리장치(10)에 유선 케이블로 접속되어도 되고, 또 무선 LAN(Local Area Network) 등에 의해 무선 접속되어도 된다. 화상처리 시스템(1)에 있어서, 화상처리장치(10)는 케이블(14)을 통해 인터넷 등의 외부 네트워크에 접속하여, 계층화된 압축 화상 데이터를 다운로드해서 취득해도 된다. 한편 화상처리장치(10)는 무선 통신에 의해 외부 네트워크에 접속해도 된다.
화상처리장치(10)는 예를 들면 게임 장치여도 되고, 화상 처리용 어플리케이션 프로그램을 로딩함으로써 화상 처리 기능을 실현해도 된다. 한편 화상처리장치(10)는 PC여도 되고, 화상 처리용 어플리케이션 프로그램을 로딩함으로써 화상 처리 기능을 실현해도 된다.
화상처리장치(10)는 사용자의 요구에 따라, 표시장치(12)의 디스플레이에 표시하는 화상의 확대/축소 처리나 상하좌우 방향으로의 이동 처리 등, 표시영역을 변경하는 처리를 한다. 사용자가 디스플레이에 표시된 화상을 보면서 입력장치를 조작하면, 입력장치가 표시영역의 변경 요구 신호를 화상처리장치(10)에 송신한다.
도 2는 입력장치(20)의 외관 구성을 나타낸다. 입력장치(20)는 사용자가 조작 가능한 조작 수단으로서, 십자 키(21), 아날로그 스틱(27a, 27b)과, 4종의 조작 버튼(26)을 구비한다. 4종의 조작 버튼(26)은 ○버튼(22), ×버튼(23), □버튼(24) 및 △버튼(25)으로 구성된다.
화상처리 시스템(1)에 있어서, 입력장치(20)의 조작 수단에는 표시화상의 확대/축소 요구, 및 상하좌우 방향으로의 스크롤 요구를 입력하기 위한 기능이 할당된다. 예를 들어 표시화상의 확대/축소 요구의 입력 기능은 우측의 아날로그 스틱(27b)에 할당된다. 사용자는 아날로그 스틱(27b)을 앞으로 당김으로써 표시화상의 축소 요구를 입력할 수 있고, 또한 앞에서부터 밀어냄으로써 표시화상의 확대 요구를 입력할 수 있다. 또한 표시영역의 이동 요구의 입력 기능은 십자 키(21)에 할당된다. 사용자는 십자 키(21)를 누름으로써, 십자 키(21)를 누른 방향으로의 이동 요구를 입력할 수 있다. 한편 화상 변경 요구의 입력 기능은 다른 조작 수단에 할당되어도 되는데, 예를 들면 아날로그 스틱(27a)에 스크롤 요구의 입력 기능이 할당되어도 된다.
입력장치(20)는 입력된 표시영역 변경 요구 신호를 화상처리장치(10)에 전송하는 기능을 가지며, 본 실시형태에서는 화상처리장치(10)와의 사이에서 무선 통신 가능하도록 구성된다. 입력장치(20)와 화상처리장치(10)는 Bluetooth(블루투스)(등록상표) 프로토콜이나 IEEE802.11 프로토콜 등을 이용해서 무선 접속을 확립해도 된다. 한편 입력장치(20)는 화상처리장치(10)와 케이블을 통해 접속하여, 표시영역 변경 요구 신호를 화상처리장치(10)에 전송해도 된다.
도 3은 본 실시형태에서 사용하는 화상 데이터의 계층 구조를 나타낸다. 화상 데이터는 깊이(Z축)방향으로 제0계층(30), 제1계층(32), 제2계층(34) 및 제3계층(36)으로 이루어지는 계층 구조를 가진다. 한편 동 도면에서는 4계층만 도시했지만, 계층수는 이것에 한정되지 않는다. 이하, 이러한 계층 구조를 가지는 화상 데이터를 "계층 데이터"라고 부른다.
도 3에 나타내는 계층 데이터는 사지 트리(quadtree)의 계층 구조를 가지며, 각 계층은 하나 이상의 타일화상(38)으로 구성된다. 모든 타일화상(38)은 같은 화소수를 가지는 동일 사이즈로 형성되는데, 예를 들면 256×256 화소를 가진다. 각 계층의 화상 데이터는 하나의 화상을 다른 해상도로 표현하고 있으며, 최고 해상도를 가지는 제3계층(36)의 원화상을 복수 단계로 축소하여, 제2계층(34), 제1계층(32), 제0계층(30)의 화상 데이터가 생성된다. 예를 들어 제N계층의 해상도(N은 0 이상의 정수)는 좌우(X축)방향, 상하(Y축)방향 모두, 제(N+1)계층의 해상도의 1/2이어도 된다.
화상처리장치(10)에 있어서, 계층 데이터는 소정의 압축 형식으로 압축된 상태로 기억장치에 보유되어 있고, 디스플레이에 표시되기 전에 기억장치로부터 읽혀져서 디코딩된다. 본 실시형태의 화상처리장치(10)는 복수 종류의 압축 형식에 대응한 디코딩 기능을 가지며, 예를 들면 S3TC 형식, JPEG 형식, JPEG2000 형식의 압축 데이터를 디코딩 가능하게 한다. 계층 데이터에 있어서, 압축 처리는 타일화상 단위로 실행되어도 되고, 또한 동일 계층 또는 복수의 계층에 포함되는 복수의 타일화상 단위로 실행되어도 된다.
계층 데이터의 계층 구조는 도 3에 나타내는 바와 같이, 좌우방향을 X축, 상하방향을 Y축, 깊이방향을 Z축으로 설정하여 가상적인 3차원 공간을 구축한다. 화상처리장치(10)는 입력장치(20)로부터 공급되는 표시영역 변경 요구 신호로부터 표시화상의 변경량을 도출하면, 그 변경량을 이용해서 가상 공간에서의 프레임의 네 모퉁이의 좌표(프레임 좌표)를 도출한다. 가상 공간에서의 프레임 좌표는 후술하는 메인 메모리에의 압축 데이터 로딩 및 표시화상의 생성 처리에 이용된다. 한편 가상 공간에서의 프레임 좌표 대신에, 화상처리장치(10)는 계층을 특정하는 정보와, 그 계층에서의 텍스쳐 좌표(UV 좌표)를 도출해도 된다. 이하, 계층 특정 정보 및 텍스쳐 좌표의 조합도 프레임 좌표라고 부른다.
도 4는 화상처리장치(10)의 구성을 나타내고 있다. 화상처리장치(10)는 무선 인터페이스(40), 스위치(42), 표시 처리부(44), 하드디스크 드라이브(50), 기록매체 장착부(52), 디스크 드라이브(54), 메인 메모리(60), 버퍼 메모리(70) 및 제어부(100)로 구성된다. 표시 처리부(44)는 표시장치(12)의 디스플레이에 표시하는 데이터를 버퍼하는 프레임 메모리를 가진다.
스위치(42)는 이더넷(Ethernet) 스위치(이더넷은 등록상표)로서, 외부 기기와 유선 또는 무선으로 접속하여 데이터의 송수신을 실행하는 디바이스이다. 스위치(42)는 케이블(14)을 통해 외부 네트워크에 접속하여, 화상 서버로부터 계층화된 압축 화상 데이터를 수신할 수 있도록 구성된다. 또한 스위치(42)는 무선 인터페이스(40)에 접속되고, 무선 인터페이스(40)는 소정의 무선 통신 프로토콜로 입력장치(20)와 접속된다. 입력장치(20)에 있어서 사용자로부터 입력된 표시영역 변경 요구 신호는 무선 인터페이스(40), 스위치(42)를 경유하여 제어부(100)에 공급된다.
하드디스크 드라이브(50)는 데이터를 기억하는 기억장치로서 기능한다. 스위치(42)를 통해 수신된 압축 화상 데이터는 하드디스크 드라이브(50)에 저장된다. 기록매체 장착부(52)는 메모리 카드 등의 리무버블(removable) 기록매체가 장착되면, 리무버블 기록매체로부터 데이터를 읽어낸다. 디스크 드라이브(54)는 읽기 전용 ROM 디스크가 장착되면, ROM 디스크를 구동해서 인식하여 데이터를 읽어낸다. ROM 디스크는 광 디스크나 광자기 디스크 등이어도 된다. 압축 화상 데이터는 이러한 기록매체들에 저장되어 있어도 된다.
제어부(100)는 멀티코어 CPU를 구비하며, 1개의 CPU 중에 1개의 범용적인 프로세서 코어와, 복수개의 심플한 프로세서 코어를 가진다. 범용 프로세서 코어는 PPU(Power Processing Unit)라 불리고, 나머지 프로세서 코어는 SPU(Synergistic-Processing Unit)라고 불린다.
제어부(100)는 메인 메모리(60) 및 버퍼 메모리(70)에 접속하는 메모리 컨트롤러를 구비한다. PPU는 레지스터를 가지며, 연산 실행 주체로서 메인 프로세서를 구비하고, 실행할 어플리케이션에 있어서의 기본 처리 단위로서의 태스크(task)를 각 SPU에 효율적으로 할당한다. 한편 PPU 자신이 태스크를 실행해도 된다. SPU는 레지스터를 가지며, 연산 실행 주체로서의 서브 프로세서와 로컬적인 기억영역으로서의 로컬 메모리를 구비한다. 로컬 메모리는 버퍼 메모리(70)로서 사용되어도 된다.
메인 메모리(60) 및 버퍼 메모리(70)는 기억장치이며, RAM(random access memory)으로 구성된다. SPU는 제어 유닛으로서 전용 DMA(Direct Memory Access) 컨트롤러를 가지며, 메인 메모리(60)와 버퍼 메모리(70) 사이의 데이터 전송을 고속으로 실행할 수 있고, 또한 표시 처리부(44)에 있어서의 프레임 메모리와 버퍼 메모리(70) 사이에서 고속 데이터 전송을 실현할 수 있다. 본 실시형태의 제어부(100)는 복수의 SPU를 병렬 동작시킴으로써 고속의 화상 처리 기능을 실현한다. 표시 처리부(44)는 표시장치(12)에 접속되며, 사용자로부터의 요구에 따른 화상 처리 결과를 출력한다.
본 실시형태의 화상처리장치(10)는 표시화상의 확대/축소 처리나 표시영역의 이동 처리를 할 때에 표시화상을 원활하게 변경시키기 위해, 압축 화상 데이터의 일부를 하드디스크 드라이브(50)에서 메인 메모리(60)로 로딩해 둔다. 또한 메인 메모리(60)에 로딩한 압축 화상 데이터의 일부를 더 디코딩하여 버퍼 메모리(70)에 저장해 둔다. 이로 인해, 나중에 필요한 타이밍에, 표시화상의 생성에 사용하는 화상을 순식간에 전환할 수 있게 된다.
도 5는 본 실시형태에서의 화상 데이터의 흐름을 모식적으로 나타내고 있다. 먼저 계층 데이터는 하드디스크 드라이브(50)에 저장되어 있다. 하드디스크 드라이브(50) 대신에, 기록매체 장착부(52)나 디스크 드라이브(54)에 장착된 기록매체가 보유하고 있어도 된다. 혹은 화상처리장치(10)가 네트워크를 통해 접속된 화상 서버로부터 계층 데이터를 다운로드하도록 해도 된다. 여기서의 계층 데이터는 상술한 대로, S3TC 형식 등에 의한 고정길이 압축, 혹은 JPEG 형식 등에 의한 가변길이 압축이 이루어지고 있다.
이 계층 데이터 중, 일부의 화상 데이터를 압축한 상태 그대로 메인 메모리(60)에 로딩한다(S10). 여기서 로딩하는 영역은 현재의 표시화상의 가상 공간에서의 근방이나, 화상의 내용, 사용자의 열람이력 등에 기초해서, 높은 빈도로 표시 요구가 이루어질 것으로 예측되는 영역 등, 미리 정한 규칙에 의해 결정한다. 로딩은 화상 변경 요구가 이루어졌을 때뿐만 아니라, 예를 들면 소정의 시간간격으로 수시로 실시한다. 이로 인해 로딩 처리가 한 시기에 집중되지 않도록 한다.
또한 로딩하는 압축 화상 데이터는 대략 일정한 사이즈를 가지는 블록 단위로 한다. 그 때문에 하드디스크 드라이브(50)가 보유하는 계층 데이터는 소정의 규칙으로 블록으로 분할해 둔다. 이렇게 함으로써 메인 메모리(60)에서의 데이터 관리를 효율적으로 실시할 수 있다. 즉, 압축 화상 데이터가 가변길이 압축된 것이어도, 블록(이후, "화상 블록"이라고 부름) 단위이면 로딩하는 데이터 사이즈가 거의 동일하기 때문에, 기본적으로 메인 메모리(60)에 그때까지 저장되어 있던 블록 중 어느 하나를 겹쳐쓰기(overwriting)함으로써 새로운 로딩이 완료된다. 그 때문에 단편화(fragmentation)가 발생하기 어려워 메모리를 효율적으로 사용할 수 있는데다가 어드레스 관리도 용이해진다.
다음으로 메인 메모리(60)에 저장되어 있는 압축 화상 데이터 중, 표시에 필요한 영역의 타일화상, 또는 필요할 것으로 예측되는 영역의 타일화상의 데이터를 디코딩하여 버퍼 메모리(70)에 저장한다(S12). 버퍼 메모리(70)는 적어도 2개의 버퍼영역(72, 74)을 포함한다. 각 버퍼영역(72, 74)의 사이즈는 프레임 메모리(90)의 사이즈보다 크게 설정되며, 입력장치(20)로부터 표시영역 변경 요구 신호가 입력되었을 경우에, 어느 정도의 양의 변경 요구에 대해서는 버퍼영역(72, 74)에 전개한 화상 데이터로 표시화상을 생성할 수 있도록 한다.
버퍼영역(72, 74) 중 한쪽은 표시화상의 생성에 이용하는 화상을 보유하기 위해 이용되고, 다른 한쪽은 이후 필요할 것으로 예측되는 화상을 준비하기 위해 이용된다. 이후, 전자를 "표시용 버퍼", 후자를 "디코딩용 버퍼"라고 부른다. 도 5의 예에서는 버퍼영역(72)이 표시용 버퍼, 버퍼영역(74)이 디코딩용 버퍼이며, 표시영역(68)이 표시되어 있는 것으로 한다. 후술하는 미리읽기 처리에 의해 디코딩용 버퍼에 저장하는 화상은 표시용 버퍼에 저장되어 있는 화상과 동일 계층의 화상이어도 되고, 축척이 다른 별도 계층의 화상이어도 된다.
다음으로 표시용 버퍼인 버퍼영역(72)에 저장된 화상 중 표시영역(68)의 화상을 프레임 메모리(90)에 묘화한다(S14). 이 사이에, 새로운 영역의 화상이 필요에 따라 디코딩되어 버퍼영역(74)에 저장된다. 저장이 완료된 타이밍이나 표시영역(68)의 변경량 등에 따라 표시용 버퍼와 디코딩용 버퍼를 전환한다(S16). 이로 인해, 표시영역의 이동이나 축척률의 변경 등에 대하여 표시화상을 원활하게 전환할 수 있다.
도 6은 미리읽기 처리를 설명하기 위한 도면이다. 도 6은 계층 데이터의 구조를 나타내고 있으며, 각 계층은 L0(제0계층), L1(제1계층), L2(제2계층), L3(제3계층)으로 표현되어 있다. 도 6에 나타내는 계층 데이터 구조에 있어서, 깊이(Z축)방향에서의 위치는 해상도를 나타내는데, L0에 가까운 위치일수록 해상도가 낮고, L3에 가까운 위치일수록 해상도가 높다. 한편 디스플레이에 표시되는 화상의 크기에 주목하면, 깊이방향에서의 위치는 축척률에 대응하는데, L3의 표시화상의 축척률을 1이라고 하면, L2에서의 축척률은 1/4, L1에서의 축척률은 1/16이 되고, L0에서의 축척률은 1/64가 된다.
따라서 깊이방향에 있어서, 표시화상이 L0측에서 L3측으로 향하는 방향으로 변화될 경우 표시화상은 확대되어 가고, L3측에서 L0측으로 향하는 방향으로 변화될 경우 표시화상은 축소되어 간다. 화살표 80은 사용자의 표시영역 변경 요구 신호가 표시화상의 축소를 요구하고 있어, 축척률 1/4(L2)를 넘은 모습을 나타내고 있다. 화상처리장치(10)에서는 타일화상(38)으로서 준비하고 있는 L1, L2의 깊이방향의 위치를 깊이방향의 미리읽기 경계로서 설정하고, 화상 변경 요구 신호가 미리읽기 경계를 넘으면 미리읽기 처리를 시작한다.
표시화상의 축척률이 L2 근방에 있을 경우, 표시화상은 L2(제2계층)의 타일화상을 이용해서 작성된다. 구체적으로는, 표시하는 화상의 축척률이 L1 타일화상과 L2 타일화상의 전환경계(82)와, L2 타일화상과 L3 타일화상의 전환경계(84) 사이에 있을 경우에 L2 타일화상이 이용된다. 따라서, 화살표 80으로 나타내는 바와 같이 화상의 축소 처리가 요구되면, L2의 타일화상이 확대된 화상에서 축소된 화상으로 변환되어 표시된다. 한편 화상 변경 요구 신호로부터 예측되는 장래에 필요한 타일화상(38)을 특정하여 디코딩해 둔다. 도 6의 예에서는 표시영역 변경 요구 신호에 의한 요구 축척률이 L2를 넘었을 때에, 화상처리장치(10)는 축소방향에 있는 L1의 대응하는 타일화상(38)을 하드디스크 드라이브(50) 또는 메인 메모리(60)로부터 미리읽어서 디코딩하고, 버퍼 메모리(70)에 써넣는다.
한편, 이상에서는 깊이방향의 미리읽기 처리에 대하여 설명했지만, 상하좌우 방향의 미리읽기 처리에 대해서도 마찬가지로 처리된다. 구체적으로는, 버퍼 메모리(70)에 전개되어 있는 화상 데이터에 미리읽기 경계를 설정해 두고, 화상 변경 요구 신호에 의한 표시 위치가 미리읽기 경계를 넘었을 때에, 미리읽기 처리가 개시되도록 한다.
도 7은 본 실시형태에 있어서, 상술한 계층 데이터를 표시하는 기능을 가지는 제어부(100a)의 구성을 상세하게 나타내고 있다. 제어부(100a)는 입력장치(20)로부터 사용자가 입력한 정보를 취득하는 입력정보 취득부(102), 새로 표시해야 할 영역을 포함하는 타일화상을 특정하는 타일화상 특정부(110), 새로 로딩해야 할 화상 블록을 결정하는 로딩블록 결정부(106), 필요한 화상 블록을 하드디스크 드라이브(50)로부터 로딩하는 로딩부(108)를 포함한다. 제어부(100a)는 또한, 압축 화상 데이터를 디코딩하는 디코딩부(112), 및 표시화상을 묘화하는 표시화상 처리부(114)를 포함한다.
도 7에서 다양한 처리를 실행하는 기능 블록으로서 기재되는 각 요소는 하드웨어적으로는 CPU(Central Processing Unit), 메모리, 그 밖의 LSI로 구성할 수 있고, 소프트웨어적으로는 메모리에 로딩된 프로그램 등에 의해 실현된다. 이미 기술한 바와 같이, 제어부(100)는 1개의 PPU와 복수의 SPU를 가지며, PPU 및 SPU가 각각 단독 또는 협동하여 각 기능 블록을 구성할 수 있다. 따라서 이 기능 블록들을 하드웨어만, 소프트웨어만, 또는 그들의 조합에 의해 다양한 형태로 실현할 수 있는 것은 당업자에게는 이해되는 바이며, 어느 하나에 한정되지 않는다.
입력정보 취득부(102)는 사용자가 입력장치(20)에 대하여 입력한 화상 표시의 개시/종료, 표시영역의 이동, 표시화상의 확대, 축소 등의 지시 내용을 취득한다. 타일화상 특정부(110)는 현재의 표시영역의 프레임 좌표와 사용자가 입력한 표시영역 변경 요구의 정보에 따라, 새로 표시해야 할 영역을 포함하는 타일화상을 특정한다. 그리고 당해 타일화상이 이미 메인 메모리(60)에 로딩되어 있으면 디코딩부(112)에, 로딩되어 있지 않으면 로딩블록 결정부(106)에 당해 정보를 공급한다. 타일화상 특정부(110)는 그 시점의 표시화상의 묘화에 필요한 화상 외에, 이후에 필요할 것으로 예측되는 타일화상도 특정해도 된다.
로딩블록 결정부(106)는 타일화상 특정부(110)로부터의 정보에 기초해서, 하드디스크 드라이브(50)로부터 메인 메모리(60)에 새로 로딩해야 할 화상 블록을 특정하고, 로딩부(108)에 로딩 요구를 발행한다. 로딩블록 결정부(106)는 로딩부(108)가 로딩 처리 중이 아닌 상태에서, 예를 들면 소정의 시간간격, 혹은 사용자가 표시영역 변경 요구를 했을 때 등, 소정의 타이밍에 로딩 요구를 해도 된다. 로딩부(108)는 로딩블록 결정부(106)의 요구에 따라 실제의 로딩 처리를 한다.
디코딩부(112)는 타일화상 특정부(110)로부터 취득한 타일화상의 정보에 기초해서, 메인 메모리(60)로부터 타일화상의 데이터를 읽어내 디코딩하고, 디코딩용 버퍼 또는 표시용 버퍼에 디코딩 후의 데이터를 저장한다. 표시화상 처리부(114)는 새로운 표시화상의 프레임 좌표에 기초해서, 버퍼 메모리(70)의 표시용 버퍼로부터 대응하는 화상 데이터를 읽어내, 표시 처리부(44)의 프레임 메모리에 묘화한다.
다음으로 계층 데이터에서의 타일화상 및 화상 블록의 구성에 대하여 설명한다. 도 8은 계층 데이터에서의 각 계층의 화상을 모식적으로 나타내고 있다. 동 도면에서 계층 데이터는 제0계층(30a), 제1계층(32a), 제2계층(34a)의 화상으로 이루어지는 것으로 한다. 그리고 각 계층의 화상 중 실선으로 구분된 구획 하나하나가 타일화상이다. 동 도면에 나타내는 바와 같이, 각 타일화상에는 타일화상으로 분할할 때에 식별 번호(이후, "타일 번호"라고 부름)를 부여해 둔다. 예를 들면 제0계층(30a)의 화상은 1개의 타일화상으로 구성되고, 타일 번호를 "0"으로 한다. 제1계층(32a), 제2계층(34a)의 타일화상은 각각 "1"~"4", "5"~"20"의 타일 번호를 부여한다.
도 9는 도 8의 계층 데이터로부터 생성되는 화상 블록을 모식적으로 나타내고 있다. 화상 블록은 소정의 데이터 사이즈를 넘지 않는 최대수의 타일화상으로 구성되도록, 타일 번호가 작은 쪽부터 타일화상을 구분지어 나감으로써 생성한다. 동 도면에서는 이 때의 "소정의 데이터 사이즈"를 "기본 블록 사이즈"로 해서 화살표 범위로 표시하고 있다.
동 도면의 예에서는 타일 번호 "0"~"5"의 타일화상이 화상 블록 2, "6"~"8"의 타일화상이 화상 블록 4, 이러한 식으로 각각 화상 블록으로 묶여 나가면서, "17"~"20"의 타일화상이 최종적인 화상 블록 6이 되고 있다. 각 화상 블록은 선두의 타일화상의 타일 번호와 포함되는 타일화상의 수로 식별한다. 따라서 화상 블록 2는 "(0, 6)", 화상 블록 4는 "(6, 3)", 화상 블록 6은 "(17, 4)" 의 식별 정보를 가진다. 이렇게 식별 정보를 정의하면, 어느 타일화상의 데이터가 어느 화상 블록에 포함되는지 여부를 용이하게 판정할 수 있다. 한편 화상 데이터는 실제로는 모든 화상 블록이 이어진 상태에서 화상파일로서 형성된다.
화상 블록의 식별 정보는 대응하는 압축 화상 데이터의 하드디스크 드라이브(50)에서의 저장영역의 정보와 대응시켜, 하드디스크 드라이브(50)에 저장해 둔다. 이와 같이, 압축 화상 데이터를 대략 같은 사이즈의 화상 블록으로 분할해 두면, 상술한 대로, 로딩한 화상 블록을 메인 메모리(60) 내의 연속된 영역에 저장해도, 하나의 화상 블록을 그 후에 로딩된 화상 블록으로 겹쳐쓰기 해나감으로써 저장이 가능해, 단편화 발생을 억제할 수 있는 동시에 메인 메모리(60)를 효율적으로 사용할 수 있다.
다음으로 지금까지 설명한 계층 구조를 가지는 화상 데이터의 표시 기술에 있어서, 화상 데이터를 보다 효율적으로 구축하여 출력하기 위한 실시형태에 대하여 설명한다. 상술한 기본적인 화상 표시의 수법에서는 표시영역 변경 요구에 따라서 얻어지는 변경 후의 프레임 좌표로부터, 표시에 필요한 타일화상의 타일 번호가 고유하게 결정된다. 이 순서에 있어서 타일 번호는 도 8에 나타내는 바와 같이, 각 계층의 화상상의 위치를 나타내는 파라미터와 등가이기 때문에, 프레임 좌표로부터 직접 타일화상의 데이터를 식별한다.
한편, 본 실시형태에서는 화상상의 위치를 나타내는 파라미터와 타일화상의 데이터를 분리함으로써, 타일화상의 데이터 지정에 자유도를 부여하고, 그로 인해 데이터 구조 자체나 화상 갱신의 효율화를 실현한다. 그 때문에, 화상상의 위치와 타일화상의 데이터의 대응 관계를 기술한 테이블을 화상 데이터에 부가한다. 이렇게 구축한 화상 데이터를 표시할 때에는 표시영역 변경 후의 프레임 좌표로부터 화상상의 위치를 나타내는 파라미터를 취득하고, 그것에 기초해서 상술한 테이블을 참조함으로써, 타일화상의 데이터의 식별 번호, 즉 타일 번호를 취득한다. 여기서 "화상상의 위치를 나타내는 파라미터"는 도 8과 같이, 화상을 타일화상으로 분할했을 때에 각각의 영역에 배정되는 식별 번호인데, 본 실시형태에서는 타일 번호와 반드시 일치하지 않아도 된다. 이후, 이와 같이 영역에 대하여 배정한 식별 번호를 타일 번호와 구별하기 위해 "영역 번호"라고 부른다.
도 10은 본 실시형태에서 표시 대상의 화상파일을 생성하는 기능을 가지는 제어부(100b)의 구성을 나타내고 있다. 한편 제어부(100b)는 도 7의 제어부(100a)에 나타낸, 화상 표시를 실행하기 위한 기능을 갖추고 있어도 되지만, 여기서는 도시를 생략하였다. 한편 도 10에 나타낸 기능만 가지는 제어부(100b)를 구비한 화상처리장치(10)를, 표시 기능을 발휘하는 화상처리장치와는 별도로 마련해도 된다.
제어부(100b)는 하드디스크 드라이브(50)에 저장된 화상 데이터를 읽어내 계층화하는 화상계층 생성부(120), 각 계층의 화상을 타일화상으로 분할하는 화상 분할부(122), 각 계층의 화상을 해석하여 중복성을 검출하는 중복성 검출부(124), 중복성을 고려하여, 영역 번호와 타일 번호를 대응시킨 타일화상 참조 테이블을 작성하는 타일화상 참조 테이블 작성부(126), 및 최종적으로 출력하는, 화상 데이터 및 타일화상 참조 테이블을 포함하는 화상파일을 생성하는 화상파일 생성부(128)를 포함한다.
화상계층 생성부(120)는 하드디스크 드라이브(50)로부터, 파일 작성 대상의 화상 데이터를 읽어낸다. 이 화상 데이터는 어느 해상도를 가지는 1장의 화상 데이터여도 된다. 처리 대상의 화상 데이터는 도면에 나타내는 바와 같이 입력장치(20)를 통해 사용자가 지정해도 되고, 원화상을 취득한 다른 기능 블록(도시하지 않음)으로부터의 요구를 접수해도 된다. 화상계층 생성부(120)는 또한, 읽어낸 화상의 데이터를 소정의 해상도로 단계적으로 축소한 화상의 데이터를 생성함으로써, 원래의 화상을 포함시킨 계층 구조의 화상 데이터를 생성한다.
화상 분할부(122)는 각 계층의 화상을 소정 사이즈로 분할하여 타일화상의 데이터를 생성한다. 생성한 타일화상의 데이터에는 각각 타일 번호를 부여하고, 일단 메인 메모리(60)에 보존한 뒤, 각 저장영역을 당해 타일 번호로 관리한다. 여기서 부여하는 타일 번호는 도 8에 나타내는 바와 같이 화상상의 위치를 반영시킨 순서여도 되는데, 예를 들면 영역 번호와 일치해도 된다.
중복성 검출부(124)는 각 계층의 타일화상을 해석함으로써, 동일 계층 내, 및 다른 계층 사이에서 화상의 중복성을 검출한다. 동일 계층 내에서의 중복성으로서는 예를 들면 복수의 타일화상에 걸쳐서 같은 화상 데이터를 이용할 수 있는 경우를 생각할 수 있다. 또한 다른 계층간에서의 중복성으로서는, 저해상도의 계층의 화상을 확대한 화상과 고해상도의 계층의 화상에서 외관 차이가 크지 않은 경우를 생각할 수 있다. 이와 같이 중복성이 있는 영역은 따로따로 타일화상의 데이터를 갖지 않아도, 어느 타일화상의 데이터를 유용함으로써 표시가 가능하다. 이와 같이 함으로써 화상 데이터의 압축을 실현한다. 구체적인 수법은 나중에 설명한다.
타일화상 참조 테이블 작성부(126)는 계층 데이터에서의 각 계층의 화상의 영역 번호와, 각 영역을 표시할 때에 이용하는 타일화상의 타일 번호를 대응시킨 타일화상 참조 테이블을 작성한다. 중복성이 검출되지 않는 화상에서는 영역 번호와 타일화상의 식별 번호가 일대일로 대응하는데, 예를 들면 같은 수치끼리 대응시킨다. 한편 중복성을 가지는 화상영역에 대해서는 타일화상의 데이터를 공유하도록, 복수의 영역 번호에 대하여 하나의 타일 번호를 대응시킨다.
화상파일 생성부(128)는 타일화상 참조 테이블에 있어서 참조처가 되고 있는 타일화상의 데이터를 읽어내 순서대로 연결시킴으로써, 최종적인 화상 데이터를 생성한다. 이 때, 상술한 바와 같이, 소정 사이즈마다 타일화상을 묶어 나감으로써 화상 블록을 형성하고, 화상 블록의 식별 정보와 화상 데이터의 선두 어드레스로부터의 오프셋값을 대응시킴으로써 화상 블록마다 데이터를 관리한다. 그리고 화상 데이터, 타일화상 참조 테이블을 포함하는 화상파일을 생성하여, 최종적인 출력 데이터로 한다.
이와 같이, 화상의 중복성을 검출하여 복수의 영역의 묘화에 하나의 타일화상의 데이터를 사용하도록 함으로써, 화상 데이터의 사이즈를 효율적으로 압축할 수 있다. 본 실시형태에서는 해상도가 다른 동일한 화상을 화상 데이터에 포함하기 때문에, 다른 계층의 화상이어도 같은 타일화상의 데이터를 이용함으로써 데이터의 고율 압축이 가능하다.
도 11은 화상에 중복성이 있는 경우에 구축하는, 영역 번호와 타일화상의 데이터의 대응 관계의 예를 모식적으로 나타내고 있다. 동 도면에서 화상(32b) 및 화상(34b)은 어느 계층 데이터에 포함되는 제1계층, 제2계층의 2개 계층의 화상이다. 즉 화상(32b)은 화상(34b)을 축소해서 얻어진다. 화상(32b) 및 화상(34b)상에 나타낸 격자는 타일화상으로 분할할 때의 경계선이며, 경계선으로 구분된 각 영역에는 미리 도면에 나타내는 바와 같이 영역 번호가 부여되어 있다. 이 영역 번호는 화상에 관계없이 고정값으로 해도 된다. 또한 번호의 부여 순서는 도면에 나타낸 것에 한정되지 않는다.
동 도면에서 화상(32b) 및 화상(34b)에는 타원형(136)과 삼각형(138)의 도형이 도시되고, 그 이외의 영역은 배경으로서 단색으로 칠해져 있는 것으로 한다. 그러한 화상의 각 영역에서 잘려 나온 타일화상의 데이터(240)는 본래의 화상상의 배열과 독립해서 메인 메모리(60) 등에 보유해 둔다. 타일화상의 데이터(240)에도 각각 타일 번호를 부여한다. 타일화상 참조 테이블은 화상(32b, 34b)상의 영역 번호와 타일 번호를 대응시킨 테이블이며, 도면 중 화살표로 나타내는 대응 관계를 기재한다.
여기서, 화상(32b)에 있어서 단색의 바탕 영역인 영역 번호 "4"는 거기에서 잘려나온 타일화상의 데이터, 즉 타일 번호 "4"에 대응되어 있다. 화상(34b)은 화상(32b)의 확대 화상이기 때문에, 2개의 화상의 영역 번호의 대응 관계는 확대율에 의해 용이하게 도출할 수 있다. 동 도면에서는 화상(32b)의 영역 번호 "4"와, 화상(34b)의 영역 번호 "15", "16", "19", "20"이 대응한다. 따라서 화상(34b)의 당해 영역 번호의 영역은 저절로 단색의 바탕 영역임이 판명된다. 이 때, 이 화상영역들을 영역 번호 "4"에 대응되어 있는 타일 번호 "4"에 대응시킴으로써, 본래의 영역에서 잘라낸 타일화상의 데이터(예를 들면 타일 번호 "15", "16", "19", "20"의 데이터)를 최종적인 화상 데이터에서 제외할 수 있다.
마찬가지로, 화상(34b)까지 확대했을 때에 바탕 영역이 되는 영역을 화상(32b)을 주사함으로써 판별하면, 영역 번호 "3"의 아래 절반의 영역, 즉 화상(34b)의 영역 번호 "17", "18"이 바탕 영역임을 알 수 있다. 따라서 이 영역들도 타일 번호 "4"의 타일화상에 대응시킴으로써, 본래의 영역에서 잘라낸 타일화상의 데이터(예를 들면 타일 번호 "17", "18"의 데이터)를 최종적인 화상 데이터에서 제외할 수 있다.
본 실시형태에서 이용하는 화상 데이터는 복수의 해상도의 동일한 화상을 처리 대상으로 삼기 때문에, 상기의 원리를 가장 작은 해상도의 화상부터 순서대로 반복함으로써, 고해상도의 큰 사이즈의 화상에 대해서도 계산 부하를 억제하여 중복성을 가지는 영역을 특정할 수 있다. 또한 상술한 바와 같이, 저해상도의 화상 데이터를 유용함으로써, 많은 영역에서 원래의 화상 데이터를 파기할 수 있을 가능성이 있기 때문에 고압축률이 예상된다. 한편 상술한 설명에서는 단색의 바탕 영역을 검출하여, 같은 바탕 영역으로 구성되는 타일화상의 데이터를 공유하는 것으로 했지만, 동일한 처리는 대략 단색의 영역, 랜덤한 모양이나 반복되는 모양으로만 이루어지는 영역 등에서도 유효하다. 이 영역들의 검출은 영역마다의 컬러 히스토그램이나 주파수 해석 등에 의해 저해상도의 화상부터 실시해 나간다.
도 12는 화상에 중복성이 있을 경우에 구축하는, 영역 번호와 타일화상의 데이터의 대응 관계의 다른 예를 모식적으로 나타내고 있다. 화상(32b) 및 화상(34b)은 도 11에서 나타낸 것과 같다. 동 도면에서 화상(32b)의 영역 번호 "2"의 영역은 화상(34b)의 영역 번호 "7", "8", "11", "12"의 영역에 대응한다. 화상(34b)은 화상(32b)보다 고해상도의 화상이기 때문에, 이 영역들의 4개의 타일화상은 영역 번호 "2"의 영역에서 잘라낸 타일화상(타일 번호 "2")을 단순히 확대한 화상보다 많은 정보를 포함하는 것이 일반적이다.
그러나 원래의 화상이 사진 등이고, 화상(34b)의 영역 번호 "7", "8", "11", "12"의 영역에 핀트가 맞지 않았을 경우 등, 타일 번호 "2"의 타일화상을 확대한 화상과 큰 차이가 없는 경우가 있다. 이러한 경우에는 타일화상 참조 테이블에 있어서, 고해상도의 화상(34b)의 4개 영역의 영역 번호를, 저해상도의 화상(32b)의 대응하는 영역에서 잘라낸 타일 번호 "2"에 묶어서 대응시킨다. 이 때, 화상(34b)으로부터 표시화상을 생성할 때에, 타일 번호 "2"의 타일화상의 데이터를 그대로 이용하는 것이 아니라, 당해 데이터를 확대한 뒤 일부의 영역만 이용하도록, 확대율 및 영역의 대응 관계를 타일화상 참조 테이블에 부기해 둔다. 이러한 계층간의 중복성은 저해상도 화상을 확대한 화상과 고해상도 화상과의 차분이 임계값 이하인 경우나, 고해상도의 화상을 주파수 해석했을 때, 임계값 이하의 주파수대만 포함하는 경우 등에 검출된다.
도 13은 도 11 및 도 12에서 설명한 영역 번호와 타일 번호의 대응 관계를 기재한 타일화상 참조 테이블의 예를 도시하고 있다. 타일화상 참조 테이블(200)은 영역 번호란(202), 타일 번호란(204), 및 확대 정보란(206)을 포함한다. 영역 번호란(202)에는 계층 데이터에서의 화상의 영역 번호를 기재한다. 한편 동 도면은 도 11 및 도 12에서 도시한 2계층의 화상에 부여된, 영역 번호 "1"에서 "20"까지의 값을 기재하였지만, 실제로는 계층 데이터를 구성하는 전체 계층의 영역 번호를 기재한다. 그리고 타일 번호란(204)에는 각 영역의 표시화상을 생성할 때에 참조하는 타일화상의 타일 번호를 기재한다. 확대 정보란(206)에는 참조처의 타일화상의 데이터를 확대할 필요가 있을 경우에, 그 확대율과, 당해 영역이 확대 후 화상의 어느 위치에 대응하는지를 나타내는 정보를 기재한다.
도 11에서 설명한 예에서는 화상(34b)에 포함되는 영역 번호 "15"~"20"의 영역은 타일 번호 "4"의 타일화상의 데이터를 이용해서 묘화할 수 있기 때문에, 이 영역 번호들에 대하여, 타일 번호란(204)에는 타일 번호 "4"가 기재되어 있다. 또한 도 12에서 설명한 예에서는 화상(34b)에 포함되는 영역 번호 "7", "8", "11", "12"의 영역은 타일 번호 "2"의 타일화상을 확대함으로써 묘화할 수 있기 때문에, 이 영역 번호들에 대하여, 타일 번호란(204)에는 타일 번호 "2"가 기재되어 있다. 또한 그 영역들은 타일 번호 "2"의 화상을 4배로 확대한 화상으로부터 얻어지는 것과, 확대 후의 화상을 4분할했을 때의 좌측 위, 우측 위, 좌측 밑, 우측 밑의 영역을 나타내는 식별 번호를 "0", "1", "2", "3"으로 했을 때의 영역의 대응 관계가 "4배:0"과 같은 표현으로 기재되어 있다.
도 11, 12의 예에서는 참조처의 타일화상은 화상(32b)에서 잘라낸 타일화상이었지만, 참조처는 원래의 계층 데이터의 화상에서 잘라낸 것에 한정되지 않는다. 예를 들면 원래의 화상에 관계없이 단색의 타일화상을 준비해 두어도 된다. 그리고 화상상에서 단색의 영역이 있을 경우에, 준비해 둔 타일화상을 참조하도록 해도 된다. 또한 도 12의 양태를 응용하여, 복수의 색을 한데 모은 타일화상을 준비해 두고, 화상상에서 단색의 영역이 있을 경우에, 당해 색을 한데 모은 타일화상 중 해당하는 색의 영역을 확대하여 묘화에 이용해도 된다. 예를 들어 256×256 화소의 타일화상의 경우, 전체 화소가 다른 색의 타일화상을 준비해 두면, 256×256=65536색의 바탕 영역을 하나의 타일화상의 화소를 확대함으로써 표현할 수 있다.
다음으로 화상파일을 생성하는 기능을 가지는 제어부(100b)의 동작을 설명한다. 도 14는 도 10에서 나타낸 제어부(100b)가 화상파일을 생성하는 처리 순서를 나타내는 플로우 차트이다. 먼저 사용자 또는 별도의 처리 모듈에 의해 화상 데이터를 지정하는 입력이 이루어지면, 화상계층 생성부(120)는 하드디스크 드라이브(50)로부터 지정된 화상 데이터를 읽어낸다(S50). 그리고 일반적인 축소 처리를 실시함으로써 소정의 해상도를 가지는 화상 데이터를 생성하고, 복수의 해상도의 화상 데이터로 이루어지는 계층 데이터를 생성한다(S52). 다음으로 화상 분할부(122)는 각 계층의 화상을 타일화상으로 분할한 뒤, 타일화상의 식별 번호인 타일 번호와, 타일화상의 데이터를 대응시킨다(S54). 실제로는 타일화상의 데이터는 메인 메모리(60)에 저장하고, 타일 번호와 메모리상의 어드레스를 대응시켜 둔다.
타일 번호는 그것을 잘라낸 화상상의 영역 번호와 동일한 번호여도 되지만, 본 실시형태의 타일화상의 데이터는 위치의 정보로부터 독립되어 있기 때문에, 타일 번호도 독립해서 부여해도 된다. 도 10~도 12는 전자의 예를 도시하고 있다. 그러면 타일화상 참조 테이블 작성부(126)는 그 단계에서의 타일화상 참조 테이블을 작성한다(S56). 이 단계에서의 타일화상 참조 테이블은 화상상의 영역 번호와, 그것에서 잘라낸 타일화상의 데이터가 대응하도록 작성된다.
다음으로 중복성 검출부(124)는 상술한 바와 같이, 동일한 계층 화상 내에서의 중복성, 및 다른 계층간에서의 중복성에 대하여 확인한다(S58). 구체적으로는, N계층의 화상을 주사하여, N+1계층의 화상의 타일화상의 크기에 대응하는 크기의 영역에 단색으로 구성되는 영역이 있는지 여부를 확인한다. 이것을 해상도가 높은 계층의 방향으로 반복해 나간다. 중복성 검출부(124)는 그 밖에, N계층의 화상을 N+1계층의 화상의 크기까지 확대한 화상과 N+1계층의 화상과의 차분 화상이나, N+1계층의 화상의 주파수 해석에 의해, N+1계층의 화상이어도 N계층의 화상과 같은 정도의 정보밖에 포함하지 않는 영역이 있는지 여부를 확인한다. 확인 수법은 화상 처리 분야에서 일반적으로 이루어지고 있는 수법을 적절히 적용해도 된다.
중복성 검출부(124)에 의해 중복성을 가지는 영역이 검출되면(S58의 Y), 타일화상 참조 테이블 작성부(126)는 도 10, 11에 나타내는 바와 같이, 하나의 타일화상, 또는 타일화상의 일부의 데이터를 복수의 화상상의 영역 표시에 이용할 수 있도록 타일화상 참조 테이블을 갱신한다(S60). 이 때, 낮은 계층의 화상을 확대함으로써 높은 계층의 화상을 표시할 경우에는 상술한 바와 같은 확대 정보도 기재한다.
다음으로 화상파일 생성부(128)는 최종적으로 출력하기 위한 화상파일을 작성한다(S62). 여기서 중복성 검출부(124)가 S58에서 중복성을 검출하지 않았을 경우에는(S58의 N), S54에서 분할하여 생성된 타일화상의 데이터를 모두 메인 메모리(60)에서 읽어내 타일 번호순으로 나열하고, 선두부터 화상 블록으로 분할해 가면서, 각 화상 블록에 식별 정보를 부여한다. 그리고 S56에서 생성한 타일화상 참조 테이블과 함께 화상파일로 한다.
중복성이 검출되었을 경우에는(S58의 Y), S60에서 갱신한 최종적인 타일화상 참조 테이블에 있어서 타일 번호란(204)에 기재되어 있는 타일 번호의 타일화상의 데이터만을 메인 메모리(60)에서 읽어내 타일 번호순으로 나열하고, 역시 선두부터 화상 블록으로 분할하여 각 화상 블록에 식별 정보를 부여한다. 그리고 S60에서 생성한 타일화상 참조 테이블과 함께 화상파일로 한다.
다음으로 이렇게 해서 생성한 화상파일에 기초해서, 화상을 표시할 때의 동작을 설명한다. 도 15는 본 실시형태에서의 화상파일을 표시하기 위한 처리 순서를 나타내는 플로우 차트이다. 본 처리 순서는 도 7에 나타낸 제어부(100a)에 의해 실현할 수 있다. 동 플로우 차트는 표시영역 변경 요구에 의해 화상파일로부터 필요한 데이터를 읽어내 디코딩하여 표시하는 처리를 주로 기재하였지만, 하드 디스크로부터의 로딩, 필요한 데이터의 미리읽기 처리, 버퍼 메모리에의 쓰기(writing) 등 기본적인 흐름은 도 5에서 도시한 것과 같다.
먼저 표시장치(12)에 화상의 일부가 표시된 상태에서, 사용자가 입력장치(20)를 통해 표시영역의 변경 요구를 입력하면, 입력정보 취득부(102)는 그것을 접수한다(S70). 그러면 타일화상 특정부(110)는 요구되는 표시화상의 변경량을 도출하고, 그것에 기초해서 새로 표시해야 할 프레임 좌표를 결정한다(S72). 표시화상의 변경량은 가상 공간에서의 상하좌우 방향의 이동량 및 깊이방향의 이동량이며, 표시해야 할 프레임 좌표는 그때까지 표시되어 있던 표시영역의 프레임 좌표와 도출된 변경량에 의해 결정할 수 있다.
다음으로 타일화상 특정부(110)는 프레임 좌표가 나타내는 변경 후의 표시화상을 포함하는 영역의 영역 번호를 취득한다(S74). 그리고 타일화상 참조 테이블을 참조하여, 취득한 영역 번호에 대응된 타일 번호를 취득한다(S76). 버퍼 메모리(70)에, 당해 타일화상의 디코딩된 데이터가 저장되어 있지 않을 경우에는(S78의 N), 디코딩부(112)가 타일 번호에 기초해서 타일화상의 데이터를 메인 메모리(60)에서 읽어내 디코딩한다(S80, S82).
여기서 도 11에 나타내는 바와 같이, 표시해야 할 화상을 저해상도의 타일화상을 확대하여 묘화하도록, 타일화상 참조 테이블에 기재되어 있을 경우, 디코딩부(112)는 타일화상 특정부(110)로부터의 지시에 따라, 당해 타일화상을 확대한 뒤, 필요한 영역을 버퍼 메모리(70)에 저장한다(S84의 Y, S86). 이러한 처리는 당해 타일화상이 디코딩 완료(S78의 Y)여도 마찬가지로 실시한다. 그리고 확대 처리 유무에 관계없이(S84의 Y, S84의 N), 표시화상 처리부(114)는 당해 타일화상 중 새로 표시해야 할 영역을 프레임 메모리에 묘화한다(S88). 묘화 처리에는 요구되는 해상도에 따라, 버퍼 메모리(70)에 저장된 데이터를 확대, 축소하는 처리도 포함된다.
지금까지 설명한 바와 같이 본 실시형태에서는 동일 계층 내뿐만 아니라 다른 계층의 화상간에서도 중복성을 확인하여, 타일화상의 데이터를 공유함으로써 데이터를 효율적으로 압축하였다. 이러한 수법은 하나의 화상으로부터 작성된 해상도가 다른 화상 데이터를 처리 대상으로 삼고 있는 본 실시형태의 특징을 활용하고 있다. 이러한 특징을 더 이용하면, 타일화상 참조 테이블도 또한 효율적으로 압축할 수 있을 가능성이 높아진다.
도 16은 타일화상 참조 테이블의 중복성에 대하여 설명하는 도면이다. 동 도면에 도시한 3개의 화상(32c, 34c, 36c)은 어느 계층 데이터를 구성하는 화상 중 제1계층, 제2계층, 제3계층의 화상이다. 제1계층의 화상(32c)에서의 영역(250a)은 제2계층의 화상(34c)에서의 영역(252a), 제3계층의 화상(36c)에서의 영역(254a)에 각각 대응한다. 여기서 예를 들면 영역(250a)의 타일화상이 단색의 바탕 영역이었을 경우, 원칙적으로 영역(252a)의 4개의 타일화상 및 영역(254a)의 16개의 타일화상도 모두 바탕 영역이 된다.
이러한 계층 데이터에서 중복성을 고려하여 타일화상 참조 테이블을 작성했을 경우, 영역(250a), 영역(252a), 영역(254a)에 포함되는 모든 영역의 영역 번호가, 동일한 타일 번호에 대응되게 된다. 도 12에서 예시한 타일화상 참조 테이블(200)에서도, 동일한 타일 번호 "4"를 참조처로 하는 영역이 이어져 있다(영역 번호 "15"~"20"). 그러므로 타일화상 참조 테이블에 있어서, 영역 번호를 그룹핑 하고, 그룹마다 타일화상 참조 테이블의 데이터 자체를 압축한다. 압축 수법은 일반적으로 이용되는 기술을 적용할 수 있다.
영역을 그룹핑할 때에는 번호순으로 나열한 영역 번호를 적당한 부분에서 구분짓는 것보다, 다른 계층의 복수의 화상 내의 대응하는 영역이 하나의 그룹에 포함되도록 하는 것이 바람직하다. 이것은 상술한 이유로 인해, 이러한 영역은 타일화상을 공유할 수 있을 가능성이 높기 때문이다.
도 16의 예에서, 각 계층의 화상 데이터 중 영역(250a, 252a, 254a)을, 계층 데이터의 측면도 260의 선(250b, 252b, 254b)으로 나타내면, 예를 들어 음영 표시한 영역(262)을 그룹핑하면 당해 그룹에 포함되는 영역은 모두 하나의 타일화상으로 묘화할 수 있게 되기 때문에, 그룹의 식별 번호 및 참조처의 타일화상의 식별 번호와 같은 대응되는 데이터로 충분해져 압축 효율이 높아진다. 이와 같이, 계층을 걸치는 영역에서 그룹핑하여 타일화상 참조 테이블을 구축함으로써, 데이터의 압축률을 더욱 향상시킬 수 있다. 그룹핑할 때의 경계는 화상의 내용이나 종류 등을 감안하여, 높은 압축률이 예상되는 위치를 미리 결정해 둔다.
한편 지금까지의 설명에서는 바탕 영역 등을 저해상도측부터 특정해 나감으로써, 고해상도의 화상은 저해상도의 타일화상을 참조하여 묘화하도록 하였다. 한편 저해상도 화상에서는 푸른 하늘 등 거의 바탕 영역이었던 것이 고해상도 화상에서는 작은 새가 그려져 있는 등, 고해상도의 화상이 저해상도의 화상을 계승하지 않는 경우가 있다.
그 때문에 도 11에서 설명한 것과 같이, 참조처 후보가 되는 저해상도의 타일화상을 확대하여 고해상도의 대응하는 영역과 비교함으로써, 고해상도 화상에서만 표시되어 있는 사물의 유무를 확인하도록 해도 된다. 그리고 만약 그러한 사물이 확인되면, 그 해상도 이상의 화상은 가장 해상도가 높은 타일화상을 축소함으로써 묘화하도록 해도 된다. 이 경우에도 타일화상 참조 테이블은 도 12에서 나타낸 것과 같은데, 하나의 영역 번호에 대하여, 고해상도 화상의 대응 영역인 복수의 타일화상의 식별 번호가 대응된다.
또한 상술한 예에서는 화상에 중복성이 있을 경우에, 복수의 영역을 하나의 타일화상의 데이터로 표시하도록 했지만, 중복성이 없더라도, 사용자가 지정하는 영역에 대하여 하나의 타일화상의 데이터를 참조하도록 해도 된다. 예를 들면 상술한 바와 같이, 고해상도 화상에서 그려져 있던 사물을 고의로 표시하지 않도록 하기 위해, 저해상도의 타일화상으로 대용해야 할 영역을 사용자로부터 접수하고, 그 영역의 표시에는 항상 저해상도의 타일화상을 이용하도록 한다. 혹은 화상의 배경 등, 확대해서 표시할 필요가 없는 영역은 고해상도의 표시여도 저해상도의 타일화상을 이용해서 묘화함으로써 데이터 사이즈를 더욱 작게 한다. 어느 경우이든 타일화상 참조 데이터는 도 12에 도시한 것과 같다.
이상에서 기술한 본 실시형태에 의하면, 동일한 화상이며 해상도가 다른 화상 데이터로 구성되는 계층 데이터로부터 화상파일을 생성할 때, 화상 데이터의 본체인 타일화상의 데이터를, 화상상의 위치의 정보로부터 독립시킨다. 그를 위해, 화상상의 위치를 나타내는 영역 번호와 타일화상의 데이터를 식별하는 타일 번호를 대응시킨 타일화상 참조 테이블을 준비한다. 이렇게 함으로써, 하나의 화상 데이터를 복수의 영역의 묘화에 유용할 수 있기 때문에, 원래의 화상 데이터의 일부를 파기하고 화상 데이터를 압축할 수 있다.
원래의 계층 데이터는 해상도가 다를 뿐 동일한 화상이기 때문에, 타일화상을 유용할 수 있는 경우가 많아, 높은 압축 효율이 예상된다. 또한 바탕 영역 등, 타일화상을 유용할 수 있는 영역은 저해상도 화상으로부터 용이하게 특정할 수 있기 때문에, 각각의 화상을 독립해서 주사하는 경우에 비해 처리의 부하가 억제된다.
또한 하나의 타일화상을 유용할 수 있는 영역은 공간 국소성이 있는 경우가 많기 때문에, 영역을 그룹핑하여 타일화상 참조 테이블 자체를 데이터 압축함으로써 더욱 데이터 사이즈를 억제할 수 있다. 이 때, 화상 평면 및 해상도의 축으로 구성하는 가상 공간에서 영역을 그룹핑함으로써, 해상도가 다른 화상을 걸친 효율이 좋은 압축이 가능하다.
[실시형태 2]
실시형태 1에서는 하나의 화상을 입력 데이터로 하고, 타일화상 참조 테이블을 포함하는 화상파일을 생성하는 기능, 및 당해 화상파일을 이용해서 화상을 표시하는 기능에 대하여 설명하였다. 본 실시형태에서는 실시형태 1에서 생성한, 타일화상 참조 테이블을 포함하는 화상파일을 수정, 변경(revising)하는 기능에 대하여 설명한다. 본 실시형태는 도 1에서 도시한 화상처리 시스템(1) 및 도 4에서 도시한 화상처리장치(10)에 의해 실현할 수 있다. 여기서는 실시형태 1과 다른 점에 착안하여 설명한다.
도 17은 본 실시형태에서 화상을 수정하는 기능을 가지는 제어부(100c)의 구성을 나타내고 있다. 제어부(100c)는 수정 대상의 화상파일을 취득하는 화상파일 취득부(318), 수정에 의해 갱신되는 영역과 갱신 부분의 화상 데이터로 이루어지는 갱신 정보를 취득하는 갱신정보 취득부(320), 갱신 후의 타일화상을 생성하는 타일화상 생성부(322), 타일화상 참조 테이블에 있어서 참조처를 새로운 타일화상의 데이터로 하는 타일화상 참조 테이블 갱신부(324), 수정 중인 화상을 표시하는 표시화상 제어부(326), 및 수정 후의 화상파일을 생성하는 화상파일 생성부(328)를 포함한다.
화상파일 취득부(318)는 사용자에 의한 수정 대상의 화상의 지정 입력을 접수하고, 해당하는 화상파일을 하드디스크 드라이브(50)로부터 읽어내 메인 메모리(60)에 저장한다. 이 화상파일은 실시형태 1에서 설명한 것과 같이 화상 데이터와 타일화상 참조 테이블을 포함한다. 갱신정보 취득부(320)는 사용자가 표시장치(12)에 표시된 수정 대상의 화상을 보면서, 입력장치(20)를 통해 입력한 갱신 정보를 취득한다. 갱신 정보에는 상술한 대로, 갱신해야 할 영역과 그 영역에서의 갱신 후의 화상 데이터가 포함된다.
타일화상 생성부(322)는 갱신해야 할 영역에 갱신 후의 화상을 적용시켰을 때에 갱신할 필요가 생긴 타일화상을 특정하여 새로운 타일화상을 생성한다. 여기서, 갱신해야 할 영역이 어느 타일화상의 일부에만 걸려 있을 경우에는 원래의 타일화상을 메인 메모리(60)로부터 읽어내, 갱신해야 할 영역만 겹쳐쓰기함으로써 새로운 타일화상을 생성한다. 어느 타일화상이 모두 갱신해야 할 영역에 포함되어 있을 경우에는 갱신 후의 화상을 잘라냄으로써 새로운 타일화상을 생성한다. 생성한 타일화상에는 타일 번호를 부여한다. 이 때의 타일 번호는 원래의 화상 타일화상에 대하여 부여된 번호 이외의 번호를 이용한다.
그리고 타일화상 생성부(322)는 생성한 타일화상의 데이터를 메인 메모리(60)에 저장한다. 이 때, 화상파일 취득부(318)가 메인 메모리(60)에 저장한 원래의 화상 데이터는 그대로 두고, 새로 생성한 타일화상은 다른 기억영역에 저장한다. 이와 같이 추가로 저장한 타일화상의 데이터는 추가분만으로 화상 블록을 형성한다. 다음으로 타일화상 참조 테이블 갱신부(324)는 메인 메모리(60)에 저장된 타일화상 참조 테이블에 있어서, 갱신해야 할 영역에 포함되는 영역 번호에 대응된 타일 번호를, 새로 생성한 타일화상의 타일 번호로 고쳐쓴다.
표시화상 제어부(326)는 실시형태 1의 도 7에서 나타낸 제어부(100a)에 포함되는 기능 블록으로 구성해도 되지만, 여기서는 도시를 생략하였다. 표시화상 제어부(326)는 실시형태 1의 도 15에서 설명한 것과 동일한 처리 순서에 의해 수정 대상의 화상을 표시하지만, 본 실시형태에서는 사용자의 입력에 의해 타일화상 참조 테이블이 갱신되어 간다. 그에 따라, 화상을 묘화할 때에 이용하는 타일화상이 새로운 것으로 변화된다. 이렇게 함으로써, 표시화상을 확인하면서 화상을 수정, 변경할 수 있게 된다.
화상파일에 포함되는 화상 데이터는 상술한 바와 같이, 타일화상의 데이터를 연결시킨 것이다. 그리고 표시시에 하드디스크 드라이브(50)로부터 효율적으로 로딩하기 위해, 당해 일련의 데이터를 구분지어서 화상 블록으로 하고 있다. 보통, 이러한 화상 데이터에 대하여 화상의 일부를 갱신할 경우, 기존의 화상 블록의 당해 타일화상을 겹쳐쓰는 방법을 생각할 수 있다. 그러나 갱신 전후의 타일화상의 사이즈가 동일하다고 단정할 수 없기 때문에, 타일화상의 갱신에는 다음과 같은 처리가 필요하게 된다.
예를 들어 도 9의 화상 블록에 있어서 타일 번호 "4"의 타일화상을 갱신할 경우, 먼저 타일 번호 "5" 이후의 타일화상의 데이터를 다른 기억영역에 퇴피시킨다. 그리고 타일 번호 "4"의 타일화상을 갱신한 후, 퇴피시킨 타일 번호 "5" 이후의 타일화상의 데이터를 갱신 후의 타일화상 "4"의 데이터 뒤에 연결시킨다. 또한 각 화상 블록이 기본 블록 사이즈를 넘지 않도록, 타일 번호 "0"의 타일화상부터 다시 화상 블록을 형성해 간다. 이러한 처리를, 사용자가 갱신 정보를 입력할 때마다 하면, 갱신 후의 화상 표시의 응답성이 나빠져 수정 작업이 지체될 가능성이 높다.
한편, 본 실시형태에서는 원래의 화상 데이터를 갱신하지 않고 다른 기억영역에 새로 생성한 타일화상을 추가하는 동시에 타일화상 참조 테이블을 갱신한다. 이로 인해, 상술한 갱신 처리보다 각별히 적은 순서로 표시화상을 갱신할 수 있기 때문에 수정을 원활하게 할 수 있다.
화상파일 생성부(328)는 사용자가 수정을 끝냈을 때 등에, 새로 생성한 타일화상의 데이터로 원래의 타일화상의 데이터를 겹쳐쓴다. 이 때는 상술한 바와 같이, 뒤에 이어지는 타일화상의 퇴피, 갱신하는 타일화상의 겹쳐쓰기, 퇴피시킨 타일화상의 복원과 같은 데이터 재구축을 실시함으로써, 쓸모없는 영역이 없는 일련의 화상 데이터를 생성한다. 그리고 갱신된 타일화상 참조 테이블을 부가하여 화상파일로 한다.
다음으로 상기의 구성에 의해 실현할 수 있는 동작을 설명한다. 도 18은 화상처리장치에 있어서 사용자가 화상을 수정, 변경할 때의 처리 순서를 나타내는 플로우 차트이다. 먼저 사용자가 수정 대상의 화상파일을 지정하면, 화상파일 취득부(318)는 하드디스크 드라이브(50)로부터 해당하는 화상파일을 읽어내 메인 메모리(60)에 저장한다(S110). 그러면 표시화상 제어부(326)는 당해 화상파일의 화상을 표시장치(12)에 표시한다(S112). 한편 실시형태 1에서 설명한 것과 마찬가지로 화상 데이터를 모두 메인 메모리(60)에 읽어내지 않고, 표시에 필요한 화상 블록만 읽어내서 표시화상의 생성에 이용하도록 해도 된다.
이 상태에서 사용자가 표시장치(12)에 표시된 화상을 보면서 갱신 정보를 입력하면(S114의 Y), 갱신정보 취득부(320)는 그것을 접수하고, 타일화상 생성부(322)가 갱신 부분의 새로운 타일화상을 생성하여 타일 번호를 부여한 뒤 메인 메모리(60)에 저장한다(S116). 사용자가 행하는 갱신 정보의 입력은 예를 들면 표시장치(12)에 표시한 화상의 근방에, 새로 붙여넣고 싶은 화상을 더 표시하고, 사용자가 포인팅 디바이스로 원하는 영역까지 드래그시키는 등의 조작에 의해 이루어진다. 혹은 포인팅 디바이스로 문자나 그림을 직접 그려넣거나 해도 된다.
다음으로 타일화상 참조 테이블 갱신부(324)는 타일화상 참조 테이블 중 새로 작성한 타일화상에 대응하는 영역의 참조처를 새로운 타일 번호로 변경한다(S118). 그러면 표시화상 제어부(326)는 새로운 참조처가 된 타일화상의 데이터를 읽어내, 디코딩함으로써 표시장치(12)의 표시를 갱신한다(S120). S114에서 S120까지의 처리를, 수정이 종료되어 갱신 정보가 얻어지지 않게 될 때까지 반복한다.
여기서 S116에 있어서 이전에 메인 메모리(60)에 저장한 타일화상의 데이터와 같은 영역의 타일화상을 다시 갱신할 경우에는, 이전에 작성하여 저장한 타일화상을 겹쳐쓰도록 해서, 일시적으로 메인 메모리(60)가 압박되는 것을 방지한다. 그 때문에, 이전에 저장한 타일화상의 데이터보다 겹쳐쓰는 데이터의 사이즈가 클 때에 대비하여, 새로 작성한 다른 영역의 타일화상을 메인 메모리(60)에 저장할 경우에는, 저장된 타일화상의 데이터의 저장영역에서 소정의 간격을 띄운 어드레스에 저장하도록 한다.
수정이 종료되었음을 사용자의 입력 등에 의해 검지하면(S114의 N), 화상파일 생성부(328)는 메인 메모리(60)에 저장해 둔 새로 작성한 타일화상을 원래의 화상파일의 화상 데이터에 포함시켜 화상 데이터를 재구축한다(S122). 구체적으로는 상술한 대로, 갱신 전의 타일화상의 데이터를 파기하여 같은 위치에 새로운 타일화상의 데이터를 삽입한 뒤에 모든 타일화상의 데이터를 연결시켜 나간다. 그리고 그렇게 재구축된 화상 데이터와, S118에서 갱신된 최종적인 타일화상 참조 테이블을 화상파일로서 생성한다(S124).
S122에서는 새로운 타일화상 데이터를 포함시킨 후의 화상 데이터에 대하여, 실시형태 1에서 설명한 것과 같은 수법에 의해 중복성 확인, 및 타일화상 참조 테이블을 더 갱신함으로써 데이터를 압축하도록 해도 된다. 또한 타일화상 참조 테이블도 실시형태 1과 마찬가지로 압축해도 된다.
수정 중, 사용자가, 직전 화상의 갱신을 취소하는 조작(Undo)을 했을 경우에는, 타일화상 참조 테이블 갱신부(324)가 타일화상 참조 테이블에 있어서, 당해 영역에 대응시킨 참조처를 갱신 전의 타일 번호로 되돌린다. 타일화상의 데이터 자체는 갱신하지 않았기 때문에, 화상을 이전 상태로 되돌리는 것을 용이하게 할 수 있다. 조작의 재이행(Redo)에서도 마찬가지로, 타일화상 참조 테이블의 참조처를 변경한다.
한편 같은 타일화상의 영역이 복수회 수정되었을 경우, 상술한 바와 같이 이전에 생성하여 메인 메모리(60)에 저장된 타일화상을 겹쳐쓰지 않고, 새로 생성한 데이터는 별도의 메모리 영역에 저장하도록 해도 된다. 이렇게 함으로써, 같은 타일화상의 영역을 복수회 수정했을 경우에, 타일화상 참조 테이블의 참조처를 변경하는 것만으로 수정 순서를 답습하여 Undo, Redo를 다단계로 실시할 수 있다.
한편, 수정 조작에 있어서 화상에 다른 화상을 확대해서 붙여넣을 경우, 확대한 화상 데이터를 생성하지 않고, 붙여넣는 화상의 원래의 데이터를 참조하도록 타일화상 참조 테이블을 갱신해도 된다. 즉, 실시형태 1의 도 11에서 설명한 것과 같이, 붙여넣는 화상을 확대한 타일화상의 데이터의 정보량은 원래의 화상의 그것과 차이가 없기 때문에, 화상 데이터로서 원래 준비하지 않아도 표시시에 확대함으로써 같은 표시화상이 얻어진다. 이렇게 해서 데이터 사이즈의 증대를 방지할 수 있다.
[실시형태 3]
본 실시형태에서는 실시형태 2에서 나타낸 화상의 수정 기능을 응용한 화상 작성 기능에 대하여 설명한다. 본 실시형태는 도 1에서 도시한 화상처리 시스템(1), 도 4에서 도시한 화상처리장치(10), 도 17에서 도시한 제어부(100c)와 동일한 구성에 의해 실현할 수 있다. 여기서는 실시형태 2와 다른 점에 착안하여 설명한다.
실시형태 2에서는 원래부터 계층 데이터가 존재하는 화상파일을 수정했지만, 본 실시형태에서는 처음부터 화상 작성을 실시하기 때문에, 계층 데이터는 존재하지 않는다. 사용자는 흰 표시 화면을 캔버스로 해서 포인팅 디바이스로 그림을 그리거나 해서 화상을 작성한다. 미리 준비한 사진이나 그림의 데이터를 붙여넣거나 해도 된다.
도 19는 화상 작성 작업 전후의 표시화상, 계층 데이터, 타일화상 데이터의 변화를 모식적으로 나타내고 있다. 화상 작성 작업 전, 즉 초기 상태에서는 표시화상(350)은 캔버스를 나타내기 때문에, 흰색 바탕 화상이 된다. 이 때는 확대, 축소 개념이 존재하지 않기 때문에, 계층 데이터는 화상(352) 한 층이어도 된다. 그 영역은 타일화상 참조 테이블에 있어서, 하나의 흰색 바탕 화상으로 이루어지는 타일화상의 데이터(354)에 대응시켜 둔다.
사용자가 표시화상(350)의 캔버스에 어떠한 묘화를 실시하여 표시화상이 표시화상(356)과 같이 되면, 그 시점에서 확대, 축소 개념이 발생하며, 계층 데이터로서 최하층의 화상(358)에 해상도가 높은 계층의 화상(360)을 추가한다. 추가하는 계층은 2개 이상이어도 되고, 허용되는 최고 해상도 등에 따라서 미리 정해 두어도 되며, 사용자가 실행한 묘화의 내용에 의해 적응적으로 결정해도 된다.
이와 같이 묘화에 의해 계층 데이터에서의 계층을 증가시켜도, 손 대지 않은 영역에 대해서는 흰색 바탕 그대로이다. 그 때문에 묘화된 부분만, 새로 타일화상의 데이터를 생성하여 추가한다. 도 19에서는 최저계층의 화상(358)의 타일화상의 데이터(364) 및 새로 추가한 계층의 화상(360) 중 묘화된 영역의 타일화상 데이터(366)만 생성한다. 그리고 당해 화상(360) 중 묘화되지 않은 영역은 캔버스로서 원래부터 준비한 흰색 바탕의 타일화상 데이터(354)를 참조하여 묘화한다. 계층 데이터에서의 영역과 타일화상 데이터의 대응은 타일화상 참조 테이블에서 설정한다.
본 실시형태의 화상 작성 기능을 가지는 제어부(100)의 동작은 실시형태 2에서 도 18을 이용해서 나타낸 것과 같다. 단 상술한 바와 같이, 묘화되지 않은 영역은 항상 처음에 준비한 흰색 바탕의 타일화상을 참조하고, 묘화가 진행함에 따라 계층이나 타일화상의 데이터를 추가해 가는 점이 특징적이다. 본 실시형태에서는 타일화상 참조 테이블에 의해 타일화상의 데이터를 계층 데이터상의 위치에서 독립시켰기 때문에, 이와 같이 최저한의 데이터의 변경으로, 확대, 축소하면서 사용자 자신이 화상을 작성해 가는 기능을 실현할 수 있다.
이상, 본 발명을 실시형태를 바탕으로 설명하였다. 상기 실시형태는 예시이며, 그들의 각 구성 요소나 각 처리 프로세스의 조합에 다양한 변형예가 가능한 점, 또한 그러한 변형예도 본 발명의 범위에 있는 점은 당업자에게 이해되는 바이다.
예를 들면 실시형태 1에서는 기본적으로, 영역 번호로부터 타일 번호의 데이터가 하나로 정해지도록 타일화상 참조 테이블을 구성하고, 그 타일화상의 데이터를 이용해서 얻어지는 하나의 화상을 필요한 영역에 적용시켰다. 한편 타일화상 참조 테이블에 있어서 하나의 영역 번호를 복수의 타일화상의 데이터에 대응시키고, 당해 영역을 표시할 때에는 대응하는 복수의 타일화상을 순서대로 표시함으로써 애니메이션을 표시할 수 있도록 해도 된다. 이러한 양태를 화상상의 일부의 영역에만 적용하면, 예를 들면 화상 내에서 새로 갱신된 부위나 중요한 부위의 마크가 점멸하도록 표시함으로써 사용자에게 그 부위를 주목시킬 수 있다.
또한 복수의 화상의 계층 데이터를 준비하고, 모든 영역 번호에, 그 복수의 화상을 구성하는 타일화상 중, 같은 영역을 나타내는 복수의 타일화상의 데이터를 대응시킴으로써, 화상 전체에 걸쳐서 표시되는 화상이 전환되도록 해도 된다. 예를 들어 옥상에 있는 고정 카메라로 촬영한 아침, 낮, 밤의 3개의 풍경 화상의 계층 데이터를 준비하고, 상술한 바와 같은 대응을 타일화상 참조 테이블에 설정한다. 표시를 전환할 때에는 크로스 페이드시키거나 해서 매끄럽게 연결시킴으로써, 확대, 축소를 가능하게 한 상태로 하루 동안의 풍경 변화를 표시할 수 있다.
일반적으로 게임 장치 등에서 표시되는 폴리곤 모델에서는 하나의 모델에 대하여 복수의 텍스쳐를 준비하고, 그것을 셰이더(shader)로 처리하여 최종 화상을 생성한다. 이와 같이 복수의 텍스쳐 데이터에 의해 하나의 화상을 생성할 경우에, 이 복수의 텍스쳐 데이터들을 각 영역 번호에 대응시킴으로써, 용이하게 최종 화상을 생성할 수 있다. 예를 들면 유화의 화상파일을 생성할 경우, 평면적인 그림의 타일화상과 요철 정보를 나타내는 범프 맵(bump map)의 타일화상을 각 영역 번호에 대응시킨다. 여기서 그림의 타일화상과 범프 맵의 타일화상은 각각 계층 구조를 이루고 있다. 이러한 대응에 기초해서 영역마다 셰이더에 의해 화상을 생성해 가면, 확대, 축소가 가능한 화상에 있어서 범프 매핑을 용이하게 실현할 수 있다. 또한 계층 데이터를 텍스쳐로서 폴리곤 모델에 적용하는 것이 용이해진다.
또한 각 영역 번호에 대응시킨 복수의 타일화상을, 화상의 깊이방향의 변화를 표현하는 화상으로 함으로써, 복셀 데이터(voxel data)를 형성할 수 있다. 복셀 데이터에서는 일반적으로, 박스의 끝 영역 등에서 정보량이 적고, 표시시에는 실시형태 1과 같이 타일화상을 공유할 수 있는 경우가 많기 때문에 데이터 압축 효과가 현저해진다. 또한 각 영역 번호에 대응시킨 깊이방향을 표현하는 복수의 타일화상 각각을, 또한 복수의 타일화상으로 함으로써, 복셀 표시에 있어서의 애니메이션이나 CG 이펙트가 가능해진다.
또한 화상을 표시하는 중에 네트워크 등을 통해 데이터를 취득하면, 실시간으로 타일화상 참조 테이블에서의 참조처를 변경하도록 해도 된다. 예를 들면, 뉴스 화상이나 스포츠의 점수 화상 등을 네트워크를 통해 취득할 때마다, 화상의 일부의 영역에 대응시키는 타일화상을, 당해 새로 취득한 데이터로 갱신한다. 그러면 화상을 표시하는 중에 실시간 정보를 추가로 표시하는 것을 용이하게 할 수 있다.
이상과 같이 본 발명은 컴퓨터, 게임기, 화상표시장치, 화상묘화장치 등의 정보처리장치에 이용 가능하다.
1 화상처리 시스템 10 화상처리장치
12 표시장치 20 입력장치
30 제0계층 32 제1계층
34 제2계층 36 제3계층
38 타일화상 44 표시 처리부
50 하드디스크 드라이브 60 메인 메모리
70 버퍼 메모리 72 버퍼영역
74 버퍼영역 90 프레임 메모리
100 제어부 102 입력정보 취득부
106 로딩블록 결정부 108 로딩부
110 타일화상 특정부 112 디코딩부
114 표시화상 처리부 120 화상계층 생성부
122 화상 분할부 124 중복성 검출부
126 타일화상 참조 테이블 작성부 128 화상파일 생성부
200 타일화상 참조 테이블 318 화상파일 취득부
320 갱신정보 취득부 322 타일화상 생성부
324 타일화상 참조 테이블 갱신부 326 표시화상 제어부
328 화상파일 생성부

Claims (20)

  1. 입력된 화상 데이터로부터 다른 해상도의 복수의 화상 데이터를 생성하고, 해상도순으로 계층화하여 구성되는 계층 데이터를 생성하는 화상계층 생성부와,
    상기 계층 데이터를 구성하는 각 계층의 화상 데이터를 소정 사이즈의 타일화상으로 분할하는 화상 분할부와,
    상기 계층 데이터를 구성하는 각 계층의 화상 데이터의 분할 후의 각 영역과, 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 작성하는 타일화상 참조 테이블 작성부와,
    상기 타일화상의 데이터와 상기 타일화상 참조 테이블을 포함하는 화상파일을 생성하는 화상파일 생성부를 구비한 것을 특징으로 하는 화상파일 생성장치.
  2. 제1항에 있어서,
    상기 타일화상 참조 테이블은 하나의 타일화상의 데이터를 복수의 영역에 대응시키고, 상기 화상파일은 상기 타일화상 참조 테이블에 있어서 대응되지 않은 타일화상의 데이터를 포함하지 않는 것을 특징으로 하는 화상파일 생성장치.
  3. 제1항 또는 제2항에 있어서,
    어느 해상도의 계층의 화상을 해석함으로써, 당해 해상도의 화상에 포함되는 타일화상의 데이터를 유용하여 묘화할 수 있는, 당해 해상도보다 고해상도의 계층의 화상의 영역을 특정하는 중복성(redundancy) 검출부를 더 구비하고,
    상기 타일화상 참조 테이블 작성부는 상기 중복성 검출부가 특정한 영역을, 유용하는 타일화상의 데이터에 대응시키는 것을 특징으로 하는 화상파일 생성장치.
  4. 제3항에 있어서,
    상기 중복성 검출부는 해석 대상의 화상을 구성하는 타일화상 중 단색으로 구성되는 타일화상을 특정하고, 상기 고해상도의 계층의 화상 중, 특정한 타일화상의 영역에 대응하는 영역을, 당해 타일화상의 데이터를 유용하여 묘화할 수 있는 영역으로서 특정하는 것을 특징으로 하는 화상파일 생성장치.
  5. 제4항에 있어서,
    상기 중복성 검출부는 해석 대상의 화상을, 상기 고해상도의 계층의 화상 사이즈까지 확대한 화상과, 상기 고해상도의 계층의 화상을 비교해서, 그 차분이 임계값 이하인 상기 고해상도의 계층의 화상 내의 영역을, 해석 대상인 화상의 타일화상의 데이터를 유용하여 묘화할 수 있는 영역으로서 특정하는 것을 특징으로 하는 화상파일 생성장치.
  6. 제1항 또는 제2항에 있어서,
    상기 타일화상 참조 테이블 작성부는 상기 분할 후의 각 영역을, 다른 계층의 화상에 걸치도록 그룹으로 나누고, 당해 그룹마다, 각 영역과 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 데이터를 압축하는 것을 특징으로 하는 화상파일 생성장치.
  7. 하나의 화상으로 다른 해상도의 화상 데이터를 소정 사이즈로 분할하여 이루어지는 타일화상의 데이터와, 상기 화상 데이터를 해상도순으로 계층화한 계층 구조에 있어서의 각 화상 데이터의 분할 후의 각 영역과 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 포함하는 화상파일을 보유하는 기억장치와,
    화상 평면상의 이동 및 해상도의 변경을 포함하는 표시영역 변경 요구를 사용자로부터 접수하는 입력정보 취득부와,
    상기 표시영역 변경 요구에 따라서 새로 표시해야 할 영역을 묘화하는 데 필요한 타일화상의 데이터를, 상기 타일화상 참조 테이블을 참조함으로써 특정하는 타일화상 특정부와,
    특정한 타일화상의 데이터를 상기 기억장치에서 읽어내, 새로 표시해야 할 영역을 묘화하는 표시화상 처리부를 구비한 것을 특징으로 하는 화상처리장치.
  8. 제7항에 있어서,
    상기 화상파일은 상기 타일화상 참조 테이블에 있어서 대응되지 않은 타일화상의 데이터를 포함하지 않는 것을 특징으로 하는 화상처리장치.
  9. 제7항 또는 제8항에 있어서,
    상기 타일화상 참조 테이블은 어느 해상도의 화상의 한 영역과, 당해 영역을 묘화할 때에 유용할 수 있는, 당해 해상도보다 저해상도의 화상에 포함되는 타일화상의 데이터를 대응시키는 것을 특징으로 하는 화상처리장치.
  10. 제9항에 있어서,
    상기 타일화상 참조 테이블은 어느 해상도의 영역의 한 영역과, 상기 저해상도의 화상에 포함되는 타일화상의 데이터를 대응시키는 동시에, 상기 타일화상을 이용해서 상기 영역을 묘화할 때의 확대율을 더 기재하고,
    상기 표시화상 처리부는 상기 타일화상을 상기 확대율로 확대함으로써 상기 영역을 묘화하는 것을 특징으로 하는 화상처리장치.
  11. 제7항 또는 제8항에 있어서,
    상기 입력정보 취득부는 표시 대상의 화상의 일부를 갱신하는 요구를 사용자로부터 접수하고,
    갱신해야 할 영역의 상기 타일화상의 데이터를 새로 생성하여, 상기 기억장치 중, 상기 화상파일에 포함되는 갱신 전의 타일화상의 데이터와 다른 기억영역에 저장하는 타일화상 생성부와,
    상기 타일화상 참조 테이블 중, 갱신해야 할 영역에 대응되어 있는 타일화상의 데이터를, 새로 생성한 타일화상의 데이터로 갱신하는 타일화상 참조 테이블 갱신부를 더 구비하고,
    상기 표시화상 처리부는 타일화상 참조 테이블의 갱신에 따라, 새로 생성한 타일화상의 데이터를 읽어내, 표시화상을 다시 묘화하는 것을 특징으로 하는 화상처리장치.
  12. 제11항에 있어서,
    상기 입력정보 취득부는 상기 화상의 일부를 갱신하는 요구를 취소하는 요구를 사용자로부터 접수하고,
    상기 타일화상 참조 테이블 갱신부는 상기 취소하는 요구가 이루어졌을 때, 상기 타일화상 참조 테이블 중, 갱신해야 할 영역에 대응되어 있는 상기 새로 생성한 타일화상의 데이터를, 직전에 대응되어 있던 타일화상의 데이터로 되돌리고,
    상기 표시화상 처리부는 타일화상 참조 테이블의 갱신에 따라서 표시화상을 다시 묘화하는 것을 특징으로 하는 화상처리장치.
  13. 화상 데이터를 메모리에서 읽어내 다른 해상도의 복수의 화상 데이터를 생성하고, 해상도순으로 계층화하여 구성되는 계층 데이터를 생성하는 스텝과,
    상기 계층 데이터를 구성하는 각 계층의 화상 데이터를 소정 사이즈의 타일화상으로 분할하는 스텝과,
    상기 계층 데이터를 구성하는 각 계층의 화상 데이터의 분할 후의 각 영역과, 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 작성하는 스텝과,
    상기 타일화상의 데이터와 상기 타일화상 참조 테이블을 포함하는 화상파일을 생성하여 메모리에 출력하는 스텝을 포함하는 것을 특징으로 하는 화상파일 생성방법.
  14. 제13항에 있어서,
    상기 타일화상 참조 테이블은 하나의 타일화상의 데이터를 복수의 영역에 대응시키고, 상기 화상파일은 상기 타일화상 참조 테이블에 있어서 대응되지 않은 타일화상의 데이터를 포함하지 않는 것을 특징으로 하는 화상파일 생성방법.
  15. 하나의 화상으로 다른 해상도의 화상 데이터를 소정 사이즈로 분할하여 이루어지는 타일화상의 데이터와, 상기 화상 데이터를 해상도순으로 계층화한 계층 구조에 있어서의 각 화상 데이터의 분할 후의 각 영역과 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 포함하는 화상파일을 메모리에서 읽어내는 스텝과,
    화상 평면상의 이동 및 해상도의 변경을 포함하는 표시영역 변경 요구를 사용자로부터 접수하는 스텝과,
    상기 표시영역 변경 요구에 따라서 새로 표시해야 할 영역을 묘화하는 데 필요한 타일화상의 데이터를, 상기 타일화상 참조 테이블을 참조함으로써 특정하는 스텝과,
    특정한 타일화상의 데이터에 기초해서, 새로 표시해야 할 영역을 묘화하는 스텝을 포함하는 것을 특징으로 하는 화상처리방법.
  16. 제15항에 있어서,
    상기 화상파일은 상기 타일화상 참조 테이블에 있어서 대응되지 않은 타일화상의 데이터를 포함하지 않는 것을 특징으로 하는 화상처리방법.
  17. 제15항 또는 제16항에 있어서,
    표시 대상의 화상의 일부를 갱신하는 요구를 사용자로부터 접수하는 스텝과,
    갱신해야 할 영역의 상기 타일화상의 데이터를 새로 생성하여, 상기 메모리 중 상기 화상파일에 포함되는 갱신 전의 타일화상의 데이터와 다른 기억영역에 저장하는 스텝과,
    상기 타일화상 참조 테이블 중, 갱신해야 할 영역에 대응되어 있는 타일화상의 데이터를, 새로 생성한 타일화상의 데이터로 갱신하는 스텝과,
    타일화상 참조 테이블의 갱신에 따라, 새로 생성한 타일화상의 데이터를 메모리에서 읽어내, 표시화상을 다시 묘화하는 스텝을 더 포함하는 것을 특징으로 하는 화상처리방법.
  18. 화상 데이터를 메모리에서 읽어내 다른 해상도의 복수의 화상 데이터를 생성하고, 해상도순으로 계층화하여 구성되는 계층 데이터를 생성하는 기능과,
    상기 계층 데이터를 구성하는 각 계층의 화상 데이터를 소정 사이즈의 타일화상으로 분할하는 기능과,
    상기 계층 데이터를 구성하는 각 계층의 화상 데이터의 분할 후의 각 영역과, 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 작성하는 기능과,
    상기 타일화상의 데이터와 상기 타일화상 참조 테이블을 포함하는 화상파일을 생성하여 메모리에 출력하는 기능을 컴퓨터에 실현시키는 것을 특징으로 하는 컴퓨터 프로그램을 저장하는 기록매체.
  19. 하나의 화상으로 다른 해상도의 화상 데이터를 소정 사이즈로 분할하여 이루어지는 타일화상의 데이터와, 상기 화상 데이터를 해상도순으로 계층화한 계층 구조에 있어서의 각 화상 데이터의 분할 후의 각 영역과 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 포함하는 화상파일을 메모리에서 읽어내는 기능과,
    화상 평면상의 이동 및 해상도의 변경을 포함하는 표시영역 변경 요구를 사용자로부터 접수하는 기능과,
    상기 표시영역 변경 요구에 따라서 새로 표시해야 할 영역을 묘화하는 데 필요한 타일화상의 데이터를, 상기 타일화상 참조 테이블을 참조함으로써 특정하는 기능과,
    특정한 타일화상의 데이터에 기초해서, 새로 표시해야 할 영역을 묘화하는 기능을 컴퓨터에 실현시키는 것을 특징으로 하는 컴퓨터 프로그램을 저장하는 기록매체.
  20. 화상의 적어도 일부를 디스플레이에 표시하기 위해 기억장치로부터 읽어내지는 화상파일의 데이터 구조를 저장하는 기록매체로서,
    하나의 화상으로 다른 해상도의 화상 데이터를 소정 사이즈로 분할하여 이루어지는 타일화상의 데이터와,
    상기 화상 데이터를 해상도순으로 계층화한 계층 구조에 있어서의 각 화상 데이터의 분할 후의 각 영역과 당해 영역을 묘화할 때에 이용하는 상기 타일화상의 데이터를 대응시킨 타일화상 참조 테이블을 대응시키고,
    상기 타일화상 참조 테이블은 하나의 타일화상의 데이터를 복수의 영역에 대응시키고, 상기 화상파일은 상기 타일화상 참조 테이블에 있어서 대응되지 않은 타일화상의 데이터를 포함하지 않는 것을 특징으로 하는 화상파일의 데이터 구조를 저장하는 기록매체.
KR1020127004839A 2009-07-28 2010-03-12 화상파일 생성장치, 화상처리장치, 화상파일 생성방법, 및 화상처리방법 KR101286148B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009175807A JP5037574B2 (ja) 2009-07-28 2009-07-28 画像ファイル生成装置、画像処理装置、画像ファイル生成方法、および画像処理方法
JPJP-P-2009-175807 2009-07-28
PCT/JP2010/001795 WO2011013263A1 (ja) 2009-07-28 2010-03-12 画像ファイル生成装置、画像処理装置、画像ファイル生成方法、および画像処理方法

Publications (2)

Publication Number Publication Date
KR20120041769A KR20120041769A (ko) 2012-05-02
KR101286148B1 true KR101286148B1 (ko) 2013-07-15

Family

ID=43528938

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127004839A KR101286148B1 (ko) 2009-07-28 2010-03-12 화상파일 생성장치, 화상처리장치, 화상파일 생성방법, 및 화상처리방법

Country Status (6)

Country Link
US (1) US8571338B2 (ko)
EP (1) EP2464093B1 (ko)
JP (1) JP5037574B2 (ko)
KR (1) KR101286148B1 (ko)
MX (1) MX2012000786A (ko)
WO (1) WO2011013263A1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5520890B2 (ja) * 2011-07-04 2014-06-11 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像データ生成装置、画像処理方法、画像データ生成方法、および画像ファイルのデータ構造
JP5474887B2 (ja) 2011-08-01 2014-04-16 株式会社ソニー・コンピュータエンタテインメント 動画データ生成装置、動画像表示装置、動画データ生成方法、動画像表示方法、および動画像ファイルのデータ構造
US8612491B2 (en) * 2011-10-25 2013-12-17 The United States Of America, As Represented By The Secretary Of The Navy System and method for storing a dataset of image tiles
JP5548671B2 (ja) * 2011-12-27 2014-07-16 株式会社ソニー・コンピュータエンタテインメント 画像処理システム、画像提供サーバ、情報処理装置、および画像処理方法
US8773463B2 (en) 2012-01-20 2014-07-08 Nephosity, Inc. Systems and methods for image data management
KR20130139622A (ko) * 2012-06-13 2013-12-23 한국전자통신연구원 융합보안 관제 시스템 및 방법
US10245446B2 (en) 2013-03-14 2019-04-02 University Of Iowa Research Foundation Marker-flange for MRI-guided brachytherapy
KR102048885B1 (ko) 2013-05-09 2019-11-26 삼성전자 주식회사 그래픽 프로세싱 유닛, 이를 포함하는 그래픽 프로세싱 시스템, 및 이를 이용한 렌더링 방법
JP6493765B2 (ja) * 2013-07-19 2019-04-03 ソニー株式会社 情報処理装置および方法
JP6692087B2 (ja) * 2013-12-27 2020-05-13 サン パテント トラスト 配信方法、およびシステム
US10019969B2 (en) 2014-03-14 2018-07-10 Apple Inc. Presenting digital images with render-tiles
KR102111740B1 (ko) * 2014-04-03 2020-05-15 삼성전자주식회사 영상 데이터를 처리하는 방법 및 디바이스.
US10229478B2 (en) * 2014-09-26 2019-03-12 Samsung Electronics Co., Ltd. Image processing apparatus and image processing method
JP6197840B2 (ja) * 2015-08-24 2017-09-20 コニカミノルタ株式会社 画像処理装置、電子ファイル生成方法及びプログラム
KR101861929B1 (ko) * 2016-09-28 2018-05-28 가천대학교 산학협력단 관심 영역을 고려한 가상 현실 서비스 제공
JP6693893B2 (ja) 2017-01-16 2020-05-13 株式会社Soken 走路認識装置
CN109388448B (zh) * 2017-08-09 2020-08-04 京东方科技集团股份有限公司 图像显示方法、显示系统以及计算机可读存储介质
US20220138901A1 (en) * 2017-08-09 2022-05-05 Beijing Boe Optoelectronics Technology Co., Ltd. Image display method, image processing method, image processing device, display system and computer-readable storage medium
CN109542573B (zh) * 2018-11-28 2021-12-07 北京龙创悦动网络科技有限公司 一种场景显示方法和装置
US20210329348A1 (en) * 2020-04-16 2021-10-21 Sony Corporation Memory management in advanced television systems committee (atsc) 3.0 system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020007945A (ko) * 2000-08-24 2002-01-29 양윤원 데이터 통신망을 통한 디지털 확대 이미지 제공방법,디지털 확대 이미지 제공장치
JP2006042117A (ja) 2004-07-29 2006-02-09 Ricoh Co Ltd 画像処理装置、画像処理方法、画像検索システム及びプログラム
JP2006304345A (ja) 1998-07-03 2006-11-02 Canon Inc 復号方法及び復号装置
JP2008257555A (ja) 2007-04-06 2008-10-23 Digitalmax Co Ltd 画像表示システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07131658A (ja) * 1993-10-29 1995-05-19 Canon Inc 画像通信装置
SG64486A1 (en) 1997-03-27 1999-04-27 Sony Corp Method and apparatus for information processing computer readable medium and authoring system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006304345A (ja) 1998-07-03 2006-11-02 Canon Inc 復号方法及び復号装置
KR20020007945A (ko) * 2000-08-24 2002-01-29 양윤원 데이터 통신망을 통한 디지털 확대 이미지 제공방법,디지털 확대 이미지 제공장치
JP2006042117A (ja) 2004-07-29 2006-02-09 Ricoh Co Ltd 画像処理装置、画像処理方法、画像検索システム及びプログラム
JP2008257555A (ja) 2007-04-06 2008-10-23 Digitalmax Co Ltd 画像表示システム

Also Published As

Publication number Publication date
JP5037574B2 (ja) 2012-09-26
JP2011028653A (ja) 2011-02-10
KR20120041769A (ko) 2012-05-02
EP2464093A4 (en) 2012-12-19
US20120189221A1 (en) 2012-07-26
WO2011013263A1 (ja) 2011-02-03
MX2012000786A (es) 2012-02-28
EP2464093A1 (en) 2012-06-13
US8571338B2 (en) 2013-10-29
EP2464093B1 (en) 2016-09-21

Similar Documents

Publication Publication Date Title
KR101286148B1 (ko) 화상파일 생성장치, 화상처리장치, 화상파일 생성방법, 및 화상처리방법
WO2011052117A1 (ja) 画像ファイル生成装置、画像処理装置、画像ファイル生成方法、画像処理方法、および画像ファイルのデータ構造
JP4564718B2 (ja) 3−dコンピュータ・グラフィックス・レンダリングシステム
US8947448B2 (en) Image processing device, image data generation device, image processing method, image data generation method, and data structure of image file
KR101922482B1 (ko) 다수의 렌더 타겟들 내에서 활성 컬러 샘플 카운트를 변경함으로써 스크린 위치에 의한 변화하는 유효 분해능
JP5368254B2 (ja) 画像ファイル生成装置、画像処理装置、画像ファイル生成方法、画像処理方法、および画像ファイルのデータ構造
US8878869B2 (en) Image processing device and image processing method
US8928694B2 (en) Image Processing apparatus receiving editing operation, image display device, and image processing method thereof
KR102499397B1 (ko) 그래픽스 파이프라인을 수행하는 방법 및 장치
KR102454893B1 (ko) 그래픽 프로세싱 장치 및 그래픽 프로세싱 장치의 동작 방법
US20150229927A1 (en) Moving picture compression apparatus, image processing apparatus, moving picture compression method, image processing method, and data structure of moving picture compression file
JP5296656B2 (ja) 画像処理装置および画像処理方法
JP2006235839A (ja) 画像処理装置および画像処理方法
CN112843700B (zh) 地形图像的生成方法、装置、计算机设备和存储介质
US20120206491A1 (en) Information processing apparatus, information processing method, and data structure of content files
KR20180023856A (ko) 그래픽 처리 시스템 및 그래픽 프로세서
EP3832590A2 (en) Method and apparatus for preprocessing image, electronic device, and storage medium
CN118043842A (zh) 一种渲染格式选择方法及其相关设备
JP2011134101A (ja) 画像処理装置、画像データ生成装置、画像処理方法、画像データ生成方法、および画像ファイルのデータ構造
JP5061177B2 (ja) 画像処理装置、画像データ生成装置、画像処理方法、画像データ生成方法、および画像ファイルのデータ構造
WO2022176722A1 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP2003196674A (ja) 画像処理方法、画像処理装置及びコンピュータ読み取り可能記憶媒体
CN116385291A (zh) 纹理渲染方法、装置、电子设备及介质
TW487890B (en) Apparatus and method for pixel data compression during rendering in computer graphics

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170616

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180619

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190619

Year of fee payment: 7