KR20050029311A - 특정 클라이언트 장치 타입용 최적화된 동적 뷰포트레이어링을 제공하는 이미징 시스템 - Google Patents

특정 클라이언트 장치 타입용 최적화된 동적 뷰포트레이어링을 제공하는 이미징 시스템 Download PDF

Info

Publication number
KR20050029311A
KR20050029311A KR1020057001332A KR20057001332A KR20050029311A KR 20050029311 A KR20050029311 A KR 20050029311A KR 1020057001332 A KR1020057001332 A KR 1020057001332A KR 20057001332 A KR20057001332 A KR 20057001332A KR 20050029311 A KR20050029311 A KR 20050029311A
Authority
KR
South Korea
Prior art keywords
image
information
request
client device
viewport
Prior art date
Application number
KR1020057001332A
Other languages
English (en)
Inventor
이스워벤카트
Original Assignee
라이트서프 테크놀로지스, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 라이트서프 테크놀로지스, 인크. filed Critical 라이트서프 테크놀로지스, 인크.
Publication of KR20050029311A publication Critical patent/KR20050029311A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

디스플레이를 최적화/주문제작 또는 요청 이미지의 렌더링을 위한 방법론을 포함한 시스템이 설명된다. 일 실시형태에서, 시스템은 특정 장치 타입에 대한 주문제작된 이미지의 생성을 요구가 있는 즉시 제공한다. 별개의 레이어로 배열된 이미지 요소를 각각 포함하는 이미지에 대한 저장소로서 기능하는 모듈; 상기 저장소로부터 특정한 이미지를 검색하는 장치로부터의 요청을 프로세싱하고, 상기 요청에 포함된 정보에 부분적으로 기초하여 상기 장치에 대한 특정한 장치 타입을 결정하는 모듈; 및 상기 특정한 이미지의 별개 레이어에서 상기 이미지 요소의 적어도 일부가 상기 장치에 대해 주문제작되도록 상기 결정된 장치 타입에 기초하여 상기 특정한 이미지의 별개 레이어에서 이미지 요소를 개별적으로 렌더링하는 모듈을 구비한다.

Description

특정 클라이언트 장치 타입용 최적화된 동적 뷰포트 레이어링을 제공하는 이미징 시스템{IMAGING SYSTEM PROVIDING DYNAMIC VIEWPORT LAYERING OPTIMISED FOR A SPECIFIC CLIENT DEVICE TYPE}
저작권 통지
본 발명 문서에 개재된 일부분은 저작권 보호에 종속하는 재료를 포함한다. 저작권자는 타인에 의해서 본 특허 문서, 또는 미국 특허 상표청의 특허 파일 또는 기록들에서 나타내진 바와 같은 특허 간행물의 모사 재생에 대해 이의를 가지지 못하지만, 그외에는 확실히 모든 저작권 권리를 가진다.
발명의 배경
1. 발명의 기술분야
본 발명은 일반적으로 디지털 이미지 프로세싱에 관한 것으로서, 더욱 상세하게는 상이한 장치들상에 디지털 이미지들을 렌더링하는 기술들을 개선시키는 것에 관한 것이다.
2. 배경기술에 대한 설명
오늘날, 특히 디지털 카메라들의 형태에서 디지털 이미징의 경우, 종래의 필름 대신 고체-상태 이미지 센서를 사용하여 사진들을 포착하는 새로운 방법이 실제로 널리 사용되고 있다. 디지털 카메라는 일종의 감지 메카니즘상에 입사하는 광을 기록함으로써 기능하며, 그 후 그 정보를 (기본적으로 아날로그-디지털 변환을 통해) 프로세스하여 타겟 풍경의 메모리 이미지를 생성한다. 디지털 카메라의 가장 큰 이점은 그것이 디지털적으로 이미지를 생성하므로, 모든 종류의 장치들과 애프리케이션간의 이미지 전달을 용이하게 하는 것이다. 예를 들어, 디지털 이미지를 워드 프로세싱 문서들내로 용이하게 삽입할 수 있고 그것들을 친구에게 이-메일로 전송할 수 있거나 또는, 세계의 모든 사람들이 볼 수 있는 웹사이트상에 이들을 개시할 수 있다. 또한, 디지털 이미지들을 조작하는 사진 편집 소프트웨어를 사용하여 이들을 개선시키거나 또는 변경시킬 수 있다. 예를 들어, 이미지들을 골라서, 레드-아이 (red-eye) 를 제거하고, 컬러와 콘트라스트를 변경하며 심지어 요소들을 첨가 내지 삭제할 수 있다. 또한 디지털 카메라는 어떤 이미지들에 즉각적인 액세스를 제공하여 필름 프로세싱의 번거로움과 지연을 회피한다. 총체적으로, 디지털 이미징은, 그 또는 그녀가 이미지를 사용하거나 또는 유포시키기를 원하는 경우 사용자에게 유연성을 제공하므로, 점차 인기를 얻고 있다.
디지털 이미지들이 발생되는 위치에 관계없이, 사용자들에 의해 디지털 이미지는 자주 조정되어진다. 예를 들어, 데스크탑 컴퓨터의 아도비 포토샵을 사용하여, 사용자는 서로의 상층에 상이한 대상들을 레이어링함으로써 이미지를 수동적으로 생성할 수 있다. 예를 들어, 이미지의 하나의 레이어는 아트워크를 포함할 수도, 다른 레이어는 텍스트를 포함할 수도 있으며, 또 다른 레이어는 비트맵 보더 및 기타 등등을 포함할 수도 있다. 그것의 각각의 별개의 레이어들을 통해 이미지는 그 후 포토삽 (고유의) 파일 포맷으로 저장될 수도 있고 또는 여러가지의 상이한 파일 포맷들 중의 어느 하나로 저장될 수도 있다.
포토샵을 사용하여, 이미지가 세상에 있는 각각이 가능한 (디스플레이-가능한) 장치에 정확하게 렌더링되도록, 일정 이미지의 상이한 버전들을 상상하여 미리 생성할 수 있다. 그러나, 이 방법은 실질적이지 못하다. 다양한 장치들은 파일 크기에 대한 제약 (예를 들어, 5 K바이트보다 작은), 비트깊이 제약 (예를 들어, 픽셀당 8비트이하), 및 이미지 크기 제약 (예를 들어, 이미지는 100 × 100 픽셀보다 클 수 없음) 을 가진다. 따라서, 수천의 장치들에 대한 이미지이 수용가능한 버전을 생성하는 작업은 실질적이지 못하다.
예를 들어, JPEG를 디스플레이할 수 있는 타겟 장치에 디스플레이를 위해, 아트워크의 상부에 (예를 들어, 비트맵 백그라운드) 하나의 캐릭터 (예를 들어, 디즈니 캐릭터)를 레이어링하는 작업을 상정한다. 이 경우, 아트워크는 타겟 장치의 스크린 크기로 리사이즈될 필요가 있다. 그 후, 캐릭터는 그 리사이즈된 아트워크의 상부에 오버레이될 (레이어될) 것이고 마지막으로 그 이미지는 보정 JPEG 품질로 저장될 필요가 있다. 만약 생성된 이미지 파일이 그 타겟 장치에 대해 너무 큰 경우, 아크워크의 리사이징 및 아트워크의 상부에 캐릭터를 다시 레이어링하는 과정을 포함하는 프로세스가 반복된다. 현재의 가용한 툴들을 사용하는 이 작업은 기껏해야 지루하고 노동-집약적이다. 또한, 전술한 매뉴얼 (즉, 예비 렌더링) 방법은 단지 정적인 이미지들을 다루는 경우에만 가능하다. 만약 사용자가 기존 이미지의 상부에 대상을 즉각적으로 레이어하고자 하는 경우, 상기 메뉴얼 방법은 가능한 해결책을 제공하지 못한다.
대상을 레이어링하는 기존의 방법들은 브라우저-기반의 온라인 기술들에 의존한다. 그러나, 이들 방법들은 기본적으로 전술한 데스크탑 방법 (예를 들어, 아도비 포토샵 방법) 의 온라인 버전들이다. 특히, 이들 방법들은, 핸드헬드 장치와 같은 일정 타겟 장치에 의해 부여될 수도 있는 다양한 제약들을 고려하지 않고 있다. 대신, 이들 방법들은 고정된 설정의 장치 제약들 (즉, 고정 뷰포트) 를 가지는 환경에 의존한다. 만약 그 이미지가 타겟 장치로 전달되는 경우, 그 이미지는 리사이즈되어야만 할 수도 있다. 그 이미지가 동적으로 재-생성되지 않기 때문에, 벡터 그래픽의 이점을 가지지 못하여, 따라서, 이미지의 일부 특징들이 손실되게 된다. 예를 들어, 640 × 480 해상도에서의 데스크탑 브라우저상에서 디스플레이되는 경우에 양호하게 보이는 텍스트가 100 × 100 스크린 해상도를 가지는 모바일 장치상에서 디스플레이를 위해 리사이즈되는 경우에는 형편없이 보이게 된다. 그 대신, 임의의 다른 그래픽들 뿐만 아니라 텍스트를 임의의 다른 적용가능한 타겟 장치의 제약들에 부가하여 타겟 장치의 최종 스크린 해상도에 기초하여 렌더링하는 것이 바람직하다. 현재의 방법들에 대한 이들 및 다른 제약들을 고려하건데, 더 개선된 해결 방법이 요구된다.
필요한 것은 파일 크기 제약들을 포함하여, 로직컬 뷰포트의 동적인 재형성 을 허용하고 인코딩 파라미터들의 동적인 조정을 허용하여, 상이한 타겟 장치들에 대해 디지털 이미지들의 렌더링이 동적으로 최적화되거나 또는 주문제작되는 방법을 제공하는 것이다. 본 발명은 이들 및 다른 필요들을 달성시킨다.
용어집
다음의 정의들은 아래의 설명의 이해를 돕기 위해, 한정이 아닌 단지 예시적인 목적으로 제공된다.
컬러 스페이스 보정 (ColorSpace correction) : 컬러 스페이스 보정은 어떤 이미지에서의 R, G, B 값들을 타겟 디스프레이 장치의 적색, 녹색, 및 청색의 컬러 색도에 적합하도록 조정하는 프로세스이다. 예를 들어, 포인톤, 시.에이의 1996년, 뉴욕, 존 윌리사, "디지털 비디오의 기술적인 소개" 의 7 장을 참고하라.
감마 보정 (Gamma Correction) : 이것은, 디스플레이의 비선형성의 역함수를 소스 이미지에 적용함으로써 디스플레이의 비선형성을 보상하는 프로세스이다. 예를 들어, 포인톤시.에이의 1996년, 뉴욕, 존 윌리사, "디지털 비디오의 기술적인 소개" 의 6 장을 참고하라.
HTML : 하이퍼텍스트 마크업 언어의 약어로, 월드 와이드 웹상에 문서를 생성하는데 사용되는 주지의 인증된 언어이다. HTML 은 비록 그것이 엄격한 서브세트는 아니지만 SGML 과 유사하다. HTML 은 다양한 테드들과 속성들을 사용하여 웹 문서의 구조와 레이 아웃을 정의한다. 예를 들어, RFC 1866 : 하이퍼텍스트 마크업 언어-2.0 을 참조하라.
HTTP : 하이퍼텍스트 전달 프로토콜의 약어로, 이것은 월드 와이드 웹에 의해 사용되는 기초 프로토콜이다. HTTP 는 메시지가 어떻게 포맷되고 송신되는지, 그리고 웹서버와 브라우저들이 다양한 명령들에 응하여 어떤 행동을 하는지를 정의한다. 예를 들어, 사용자가 URL 을 그 또는 그녀의 브라우저에 입력하는 경우, 이것은 실제로 HTTP 명령을, HTTP 명령으로 하여금 요청된 웹 페이지를 페치 및 송신하도록 지시하는 웹 서버로 전송한다. HTTP 의 추가적인 설명은 RFC 2616 : 하이퍼텍스트 전달 프로토콜--HTTP/1.1 에서 얻을 수 있다. RFC 2616 은 월드 와이드 웹 협회 (W3) 으로부터 회득될 수 있으며, 현재 인터넷 www.w3.org/protocols/를 통해 회득된다.
레드-아이 보상 (Red eye Compensation) : "레드 아이" 효과는 인간 눈의 망막에 대한 카메라 플래쉬 반사에 의해 발생된다. 레드를 더 어두운 컬러들로 "불포화시키는" 컴퓨터 알고리즘들은 "레드니스"를 감소시킬 수 있다. 예를 들어, 왕 (wang) 등에게 특허권이 부여된 "디지털 이미지에서 레드-아이를 자동적으로 검출하여 감소시키는 장치 및 방법"이라른 명칭의 미국 특허 제 6,278,491 호를 참조하라.
샤픈 (Sharpen) : 이것은 향상된 외양을 위해 또는 흐릿한 디스플레이를 보상하기 위해 이미지에서 그레이-스케일 에지들을 "크리스프닝" 하는 프로세스이다. 일반적으로 이것은 "언샤프 마스킹"를 통해 달성된다. 예를 들어, 제인, 에이.케이의, 1989, NJ, 엥겔우드 클립, 프렌틱스 홀사의, 이미지의 로우패스 필터링된 버전이 어떻게 이미지로부터 공제될 수도 있는지를 설명하는 "이미지 프로세싱의 기초"를 참조하라.
URL : 유니폼 리소스 로케이터의 약어로서, 월드 와이드 웹상의 문서 및 다른 리소스들의 글로벌 어드레스이다. 어드레스의 첫 부분은 어떤 프로토콜이 사용되는지를 나타내고 , 두번째 부분은 IP 어드레스 또는 그 리소스가 위치하는 도메인 명을 나타낸다.
뷰포트 (Viewport) : 뷰포트는 사용자가 최종의 이미지로 보게되는 타겟 디스플레이를 칭한다. 예를 들어, 모바일 헨드헬드 장치의 경우에서, 뷰포트는 그 장치의 스크린이다. 그러나, 개개의 타겟 장치에 의거하여, 뷰포트는 스크린의 물리적인 크리로 반드시 제약되는 것은 아니다. 예를 들어, 만약 그 장치가 스크롤 능력을 포함하는 경우, 뷰포트의 (논리적) 크기는 스크린의 물리적인 크기를 초과할 수도 있다.
화이트포인트 보정 (Whitepoint Correction) : 화이트포인트는 주어진 환경에서의 "기준 화이트"의 컬러 코디네이트들이다. 인간의 눈은 화이트포인트로 "크로메틱 조정" 을 할 수 있다. 화이트포인트 보정은, 타겟 디스플레이의 화이트포인트로 인간의 눈을 조정하는 것을 설명하는 R, G, B 컬러 코디네이트들을 조정하는 프로세스이다. 예를 들어, 지오지안니, 이.제이 등의, 1998년, MA, 리딩, 애디선-위즐리사의 "디지털 컬러 관리" 를 참고하라.
XML : XML 은 연장가능한 마크업 언어를 상징하며, W3C 에 의해 개발된 규격이다. XML 은 특히 웹 문서들을 위해 고안된, SGML 의 페어드-다운 버전이다. 이것은 설계자들로 하여금 그들 자신의 주문제작된 테그들을 생성하고, 애플리케이션들간의 및 조직들간이 데이터에 대한 정의, 송신, 유효화, 및 해석을 가능하게 한다. XML에 대한 추가적인 설명을 위해, 예를 들어, W3C로부터 추천된 규격인 "연장가능한 마크업 언어 (XML) 1.0" (2000년 10월 6일자, 제 2 판) 을 참고하라. 이 규격의 카피는 인터넷 www.w3.org/TR/2000/REC-xml-20001006 에서 현재 획득될 수 있다.
발명의 개요
특정 장치 타입에 대해 주문제작된 이미지의 요구되는 생성을 위한 시스템이 설명된다. 일 실시형태에서, 시스템은, 별개의 레이어로 배열된 이미지 요소를 각각 포함하는 이미지에 대한 저장소로서 기능하는 모듈; 저장소로부터 특정한 이미지를 검색하는 장치로부터의 요청을 프로세싱하고, 그 요청에 포함된 정보에 부분적으로 기초하여 상기 장치에 대한 특정한 장치 타입을 결정하는 모듈; 및 상기 장치에 대해 주문제작된 특정한 이미지의 카피를 생성하고, 상기 특정한 이미지의 별개 레이어에서 상기 이미지 요소의 적어도 일부가 상기 장치에 대해 주문제작되도록 상기 결정된 장치 타입에 기초하여 상기 특정한 이미지의 별개 레이어에서 이미지 요소를 개별적으로 렌더링하는 모듈을 구비한다.
또한, 클라이언트 장치로 송신되는 이미지의 디스플레이를 동적으로 최적화시키는 방법이 개시된다. 일 실시형태에서, 방법은, 디스플레이를 위해 타겟 이미지를 검색하는 특정한 클라이언트 장치로부터 온라인 요청을 수신하는 단계로서, 상기 요청은 상기 클라이언트 장치에 대한 장치 타입의 결정을 돕는 정보를 포함하며, 상기 타겟 이미지는 개별 레이어들로 배열된 이미지 요소를 포함하는, 상기 온라인 요청을 수신하는 단계; 상기 요청에 기초하여, 상기 특정한 클라이언트 장치에 대한 장치 타입을 결정하는 단계; 상기 결정된 장치 타입에 기초하여, 상기 특정한 클라이언트 장치에 대한 뷰포트 및 레이어링 정보를 특정하는 정보를 검색하는 단계; 상기 뷰포트 및 레이어링 정보에 기초하여, 상기 특정한 클라이언트 장치에서의 디스플레이를 위해 최적화된 타겟 이미지의 버전을 생성하는 단계; 및 상기 타겟 이미지의 생성된 버전을 디스플레이를 위해 상기 클라이언트 장치로 송신하는 단계를 포함한다.
도면의 간단한 설명
도 1 은 본 발명의 구현에 적합한 디지털 카메라의 일반적인 블록도이다.
도 2a 는 종래의 디지털 이미징 장치의 블록도이다.
도 2b 는 디지털 카메라의 동작을 지시하고 이미지 데이터를 프로세싱하기 위해 제공된 종래의 온보드 프로세서 또는 컴퓨터의 블록도이다.
도 3 은 본 발명이 바람직하게 구현된, 무선 연결 환경의 예를 나타내는 블록도이다.
도 4 는 양호한 이미지 품질을 유지하면서 동시에 타겟 장치의 제약들을 충족하는데 사용되는 본 발명의 양방향 최적화/주문제작 방법을 나타내는 도면이다.
도 5a 는 레이어링 API 를 나타내고 다양한 레이어들을 조합하는 방법을 설명하기 위해 제공된 도면이다.
도 5b 는 바람직하게 사용된 뷰포트 코디네이트 시스템을 나타내는 도면이다.
도 5c 는 본 발명의 XML API 에서 사용되는 대상들의 계층을 나타내는 도면이다.
도 6a 및 도 6b 는 동적인 뷰포트 레이어링을 지원하는 본 발명에 의해 사용된 전체 방법론을 나타내는 흐름도이다.
바람직한 실시형태의 상세한 설명
이하, 디지털 이미징 환경에서 구현된 본 발명의 현재 바람직한 실시형태를 중심으로 설명한다. 그러나, 본 발명은 어떤 하나의 특정 애플리케이션 또는 어떤 특정 환경으로 한정되는 것은 아니다. 그 대신, 본 발명의 시스템과 방법들이 여러 가지의 서로 다른 장치들에 바람직하게 사용될 수도 있다. 따라서, 다음의 예시적인 실시형태들에 대한 설명은 한정이 아닌 예를 위한 것이다.
Ⅰ. 디지털 카메라-기반 구현
A. 디지털 카메라의 기본 구성 요소들
본 발명은 디지털 카메라와 같은 미디어 포착 및 기록 시스템상에 구현될 수도 있다. 도 1 은 본 발명을 구현하는데 적합한 디지털 카메라 (100) 의 일반적인 블록도이다. 도시된 바와 같이, 디지털 카메라 (100) 는 이미징 장치 (120), 시스템 버스 (130), 및 프로세서 또는 컴퓨터 (140) (예를 들어, 마이크로프로세서-기반 유닛) 를 구비한다. 또한, 디지털 카메라 (100) 에 의해 이미지가 포착되는 대상 또는 오브젝트 (150) 가 도시된다. 오브젝트 (150) 의 이미지를 포착하는데 있어, 디지털 카메라 (100) 의 이들 구성 요소들의 일반적인 동작을 설명한다.
도시된 바와 같이, 이미징 장치 (120) 은 그 장치가 오브젝트의 광학적 이미지를 포착할 수도 있다는 의미에서 오브젝트 (150) 에 광학적으로 커플링된다. 광학적 커플링은 예를 들어, 오브젝트 (150) 의 이미지를 이미징 장치 (120) 상에 포커스하는 렌즈 어셈블리 (미도시) 와 같은 광학장치의 사용을 포함한다. 이미징 장치 (120) 는 예를 들어, 시스템 버스 (130) 를 통해, 컴퓨터 (140) 와 번갈아 통신한다. 컴퓨터 (140) 는 이미징 장치 (120) 에 대한 전체 제어를 제공한다. 동작에서, 컴퓨터 (140) 는, 유효하게, 이미징 장치 (120) 에게 무엇을 하고 언제 할 것인지를 알려줌으로써 이미징 장치 (120) 를 제어한다. 예를 들어, 컴퓨터 (140) 는 이미징 장치 (120) 의 제어를 디지털 카메라 (100) 의 다른 전자기계적인 주변 장치 (플래시 부속품) 와 조화되도록 하는 일반적인 입력/출력 (I/O) 제어를 제공한다.
일단, 사진사 또는 카메라 사용자가 이미징 장치 (120) 를 (사용자-작동 포크싱을 사용하여 또는 사용하지 않고) 오브젝트 (150) 로 겨냥하고 포착 버튼 또는 다소 다른 수단들을 사용하여, 카메라 (100) 가 오브젝트 (150) 의 이미지를 포착하도록 지시하는 경우, 컴퓨터 (140) 는 시스템 버스 (130) 을 통해 이미지 장치 (120) 가 오브젝트 (150) 를 나타내는 이미지를 포착하도록 명령한다. 기본적으로, 이미징 장치 (120) 는 오브젝트 (150) 로부터 반사된 광을 포착하여 그 광을 이미지 데이터로 전환시킴으로써 동작한다. 포착된 데이터는 시스템 버스 (130) 를 통해 컴퓨터 (140) 로 전달되고, 컴퓨터 (140) 는 이미지 데이터를 그것의 내부 메모리에 저장하기 전에 이미지 데이터에 대해 다양한 이미지 프로세싱 기능들을 수행한다. 또한, 시스템 버스 (130) 는 이미징 장치 (120) 와 컴퓨터 (140) 사이의 다양한 상태 및 제어신호들을 통과시킨다. 이미징 장치 (120) 및 컴퓨터 (140) 의 구성 요소들과 동작들을 이하에서 상세하게 설명한다.
B. 이미징 장치상에 이미지 포착
도 2a 는 종래의 디지털 이미징 장치 (120) 의 블록도이다. 도시된 바와 같이, 이미지 장치 (120) 는 조리개를 가지는 렌즈 (210), 하나이상의 필터(들), 이미지 센서 (230) (예를 들어, CMOS, CCD 등), 포커스 메카니즘 (예를 들어, 모터), 타이밍 회로 (242), 신호 프로세서 (251) (예를 들어, 아날로그 신호 프로세서), 아날로그/디지털 (A/D) 변환기 (253), 및 인터페이스 (255) 를 구비한다. 이하 이들 구성 요소들의 동작을 설명한다.
동작에서, 이미징 장치 (120) 는 광경로 (220) 를 따라 이미지 센서 (230) 에 부딪히는 반사광을 통해 오브젝트 (150) 의 이미지를 포착한다. 렌즈 (210) 는 오브젝트 (150) 으로부터의 광을 광경로 (220) 를 따라 이미지 센서 (230) 상에 포커스하는 광학소자를 구비한다. 광학 메카니즘 (241) 은 렌즈 (210) 을 조정하는데 사용될 수도 있다. 바람직하게는, 필터는 오브젝트 (150) 에 의해 반사되는 광의 상이한 컬러 성분들을 분리시키도록 이미지 센서 (230) 상부에 위치된 하나 이상의 컬러 필터들을 구비한다. 예를 들어, 이미지 센서 (230) 는 적색, 녹색, 청색의 필터들로 덮여질 수도 있는데, 이들 컬러 필터들은 보다 예리한 이미지와 실제에 가까운 컬러를 생성하기 위해 설계된 패턴 ("모자이크") 으로 이미지 센서를 가로질러 서로 혼합되어 있다.
종래의 카메라가 이미지를 포착하기 위해 필름을 노광시키지만, 디지털 카메라는 이미지 센서 (예를 들어, 이미지 센서 (230)), 고체-상태의 전자 장치상에 광을 수집시킨다. 이미지 센서 (230) 는 전하-결합 장치 (CCD) 또는 상보적인 금속-산화 반도체 (CMOS) 센서 중의 어느 하나로 구현될 수도 있다. CMOS 와 CCD 이미지 센서들 양자는 표면상에 있는 포토사이트 (photosites) (또는 포토다이오드) 로 공지된 작은 셀들의 그리드상에 광을 포착함으로써 동작한다. 일반적으로, 이미지 센서의 표면은 포토사이트들에 비춰지는 광을 전기적 전하로 변환시키는 수십만 개의 포토사이트들로 이루어진다. 주어진 이미지에 의존하여, 광의 변화량들이 각 포토사이트를 때려서, 그 포토사이트에서 전기적인 전하의 변화량이 발생된다. 그 후, 이들 전하들은 디지털 정보로 측정되고 변환된다. 디지털 카메라에 내장되기에 적합한 CCD 센서는 N.Y 로케스터의 이스트만 코닥, 네들란드의 필립스, 및 일본의 소니를 포함하는 많은 벤더들로부터 획득될 수 있다. 또한, 적합한 CMOS 센서는 다양한 벤더들로부터 획득될 수 있다. 대표적인 벤더는 네들란드의 에스티마이크로일렉트로닉스 (공식적으로는 VLSI Vision Ltd.), IL 의 스카움버그의 모토롤라, 및 CA 의 산타클라라의 인텔이다.
오브젝트 (150) 의 이미지를 포착하도록 지시를 받은 경우, 이미지 센서 (230) 는 응답하여 포착된 오브젝트 (150) 를 나타내는 일련의 미가공 데이터를 (예를 들어, CCD 구현에 대해 CCD 포맷으로) 발생시킨다. 예를 들어, CCD 센서를 사용하는 일 실시형태에서, 이미지 센서 (230) 상에 포착된 상기 미가공 이미지 데이터는 신호 프로세서 (251), 아날로그/디지털 (A/D) 변환기, 및 인터페이스 (255) 를 통과하는 루트로 정해진다. 인터페이스 (255) 는 신호 프로세서 (251), 포커스 메카니즘 (241), 및 타이밍 회로 (242) 를 제어하는 출력을 가진다. 인터페이스 (255) 로부터, 이미지 데이터는 도 1 에서 이미 도시된 바와 같이, 시스템 버스 (130) 을 통해 컴퓨터 (140) 로 패스된다. 이하, 이미지 데이터를 프로세싱하는데 컴퓨터 (140) 의 동작을 설명한다.
C. 이미지 프로세싱
종래의 탑재된 프로세서 또는 컴퓨터 (140) 는 디지털 카메라 (100) 의 동작을 지시하고 이미징 장치 (120) 상에 포착된 이미지 데이터를 프로세싱하도록 제공된다. 도 2b 는 프로세서 또는 컴퓨터 (140) 의 블록도이다. 도시된 바와 같이, 시스템 버스 (130) 는 이지밍 장치 (120), (선택적인) 전력 관리부 (262), 프로세서 (CPU) (264), 랜덤 액세스 메모리 (RAM) (266), 입력/출력 (I/O) 제어기 (280), 비-휘발성 메모리 (282), 착탈식 메모리 인터페이스 (283), 및 액정 디스플레이 (LCD) 제어기 (290) 사이의 연결 경로를 제공한다. 착탈식 메모리 (284) 는 착탈식 메모리 인터페이스 (283) 를 통해 시스템 버스 (130) 에 연결된다. 다른 방법으로, 카메라 (100) (및 따라서 탑재된 컴퓨터 (140)) 는 착탈식 메모리 (284) 또는 착탈식 메모리 인터페이스 (283) 없이도 구현될 수도 있다. 전력 관리부 (262) 는 전원 (272) 과 연결된다. 또한 도 2b 에 도시된 바와 같이, 카메라 사용자 인터페이스 (295) 는 LCD 제어기 (290) 및 입력/출력 제어기 (280) 에 전기적으로 연결된다. 이하, 이들 구성 요소들의 각각에 대해 보다 상세하게 설명한다.
프로세서 (CPU) (264) 는 일반적으로 카메라 (100) 의 동작을 제어하는 종래의 프로세서 장치 (예를 들어, 마이크로프로세서) 를 구비한다. 그 프로세서 (264) 의 구현은 여러 가지의 다양한 방법으로 달성될 수도 있다. 예를 들어, 프로세서 (264) 는 DSP (디지털 신호 프로세싱) 로직 블록들, 메모리 제어 로직 블록들, 비디오 제어 로직 블록들, 및 인터페이스 로직을 가지는 마이크로프로세서 (예를 들어, IL의 스카움버그의 모토롤라로부터 회득가능한 MPC823 마이크로프로세서) 로서 구현될 수도 있다. 다른 방법으로는, 프로세서 (264) 는 예를 들어, CA, 뉴포트 비치의 Conextant Systems, Inc 로부터 획득가능한 랩터 Ⅱ 칩셋, (MA, 웨이렌드의 Sound Vison, Inc로부터 획득가능한) Sound Vision Clarity 2, 3, 또는 4, 또는, 이미지 프로세싱 주변장치와 프로세싱 코어를 집적화시킨 유사 칩셋을 사용하여 "칩 (셋) 상의 카메라"로서 구현될 수도 있다. 일반적으로, 프로세서 (264) 는 멀티스레딩 환경내의 카메라 (100) 의 다양한 프로세스들을 제어하기 위해 복수의 소프트웨어 루틴을 동시에 실행시킬 수 있다.
디지털 카메라 (100) 는 몇개의 메모리 구성 요소들을 구비한다. 메모리 (RAM) (266) 는 선택적으로 다양한 스토리지 기능으로 할당될 수도 있는 동적 메모리의 인접 블록이다. 동적인 렌덤 액세스 메모리는 예를 들어, 일본의 도시바, ID 보이스의 마이크론 테크놀로지, 일본이 히타치, 및 대한민국의 삼성 전자를 포함한 다양한 벤더로부터 획득될 수 있다. 일반적으로, 종래의 읽기 전용 메모리 또는 플레시 메모리를 포함할 수도 있는 비-휘발성 메모리 (282) 는 카메라 (100) 의 동작을 제어하는 일련이 컴퓨터 판독가능 프로그램 명령들을 저장한다. 착탈식 메모리 (284) 는 부가적인 이미지 데이터 스토리지 영역으로서 기능하고, 착탈식 메모리 인터페이스 (283) 를 통해 카메라 (100) 사용자에 의해 용이하게 제거가능하고 및 대체가능한 비-휘발성 장치를 포함할 수도 있다. 따라서, 몇개의 착탈식 메모리 (284) 를 소유하는 사용자는 효과적으로 카메라 (100) 의 사진-수용 능력을 확장시키기 위해 풀 착탈식 메모리 (284) 를 텅빈 착탈식 메모리 (284) 로 대체할 수도 있다. 일반적으로 착탈식 메모리 (284) 는 플래시 메모리를 사용하여 구현된다. 플레시 메모리에 대한 구입가능한 벤더는 예를 들어, CA, 선밸리의 산디스크 코포레이션과 일본이 소니를 포함한다. 디지털 카메라 (100) 는 본 발명의 이미지 포착 및 프로세싱 방법론을 용이하게 수용하는 다른 메모리 구성 및 설계들을 통합할 수도 있다.
또한, 일반적으로 디지털 카메라 (100) 는 카메라 사용자 또는 다른 시스템 및 장치들과 통신하기 위한 몇개의 인터페이스를 구비한다. 예를 들어, I/O 제어기 (280) 는 컴퓨터 (140) 로 및 로부터 통신을 허용하는 인터페이스 장치이다. I/O 제어기 (280) 는 외부의 호스트 컴퓨터 (미도시) 가 컴퓨터 (140) 와 연결 및 통신하도록 허용한다. 도시된 바와 같이, 또한, I/O 제어기 (280) 는 복수의 버튼 및/다이얼 (298), 및 LCD 스크린 (296) 에 더하여 장치의 사용자 인터페이스 (295) 의 하드웨어 구성 소자들인 선택적인 상태 LCD (299) 와 인터페이스한다. 디지털 카메라 (100) 는 예를 들어 카메라 사용자로 피드백을 제공하고 카메라 사용자로부터 입력을 수신하는 사용자 인터페이스 (295) 를 구비할 수도 있다. 다른 방법으로는, 이들 소자들은 호스트 장치에 대해 클라이언트로서 구현된 미디어 포착 장치 에 대한 호스트 장치 (예를 들어, 개인 휴대 정보 단말기) 를 통해 제공될 수도 있다. 감시 카메라와 같이, 사용자들과 상호작용할 필요가 없는 일 실시형태에 대해, 전술한 사용자 인터페이스 구성 요소들은 요구되지 않을 수도 있다. LCD 제어기 (290) 는 메모리 (RAM) (266) 에 액세스하여 프로세스된 이미지 데이터를 디스플레이를 위해 LCD 스크린 (296) 으로 전달한다. 비록, 사용자 인터페이스 (295) 가 LCD 스크린 (296) 을 포함하더라도, 뷰파인더 또는 직접적인 뷰 디스플레이가 카메라 사용자에게 피드백을 제공하기 위해 LCD 스크린에 부가하여 또는 그 대신에 사용될 수도 있다. 사용자 인터페이스 (295) 의 구성 요소는 다양한 벤더들로부터 회득될 수 있다. 예는 일본의 샤프, 도시바, 및 시티즌 전자, 대한민국의 삼성전자, 및 CA, 팔로 알토이 Hewlett-Packard 를 포함한다.
전력 관리부 (262) 는 전원 (272) 와 통신하며 카메라 (100) 에 대한 전력 관리 동작들을 조정한다. 전원 (272) 은 카메라 (100) 의 다양한 구성 요소들에 동작 전력을 제공한다. 전형적인 구성에서, 전원 (272) 은 메인 전력 버스 (278) 에 동작 전력을 또한 부차적인 전력 버스 (279) 에 동작 전력을 공급한다. 상기 메인 전력 버스 (278) 는 이미징 장치 (120), I/O 제어기 (2800, 비-휘발성 메모리 (282), 및 착탈식 메모리 (284) 에 전력을 제공한다. 부차적인 전력 버스 (278) 는 전력 관리부 (262), 프로세서 (264), 및 메모리 (RAM) (266) 에 전력을 제공한다. 전원 (272) 은 배터리 (275) 에 연결되고 또한 보조 베터리 (276) 에도 연결된다. 또한, 카메라 사용자는 원하는 경우에는, 외부의 전원에 전원 (272) 을 연결할 수도 있다. 전원 (272) 의 정상적인 동작 동안, 메인 베터리 (275) 는 이후 동작 전력을 메인 전력 버스 (278) 와 부차적인 전력 버스 (279) 를 통해 카메라 (100) 에 공급하는 전원 (272) 에 동작 전력을 제공한다. 메인 베터리 (275) 가 고장난 (예를 들어, 배터리 출력 전압이 최소 동작 전압 레벨이하로 떨어진 경우) 전력 고장 모드 동안, 보조 베터리 (276) 가 동작 전력을 전원 (276) 에 제공한다. 전형적인 구성에서, 전원 (272) 은 보조 배터리 (276) 로부터의 전력을 단지 카메라 (100) 의 부차적인 전력 버스 (279) 로 제공한다.
전술한 시스템 (100) 은 본 발명을 구현하기 위해 사용될 수도 있는 미디어 포착 및 기록 시스템 (예를 들어 디지털 카메라) 에 기반을 둔 기본 하드웨어를 설명하기 위한 목적으로 제공된다. 그러나, 본 발명은 단지 디지털 카메라로 한정되지 않으며 그 대신, 이하에서 상세하게 제공되는 본 발명의 방법론들로부터 지원할 수 있는 및/또는 유익할 수 있는 다양한 장치들에 바람직하게 적용될 수도 있다.
D. 시스템 환경
도 3 은 본 발명이 바람직하게 사용된 무선 연결 환경 (300) 의 예를 나타낸다. 도시된 바와 같이, 환경 (300) 은 동적 신호 프로세서 (DSP) 유닛 (325) , 랜덤 액세스 메모리 (RAM) (330) (예를 들어, DRAM, SRAM 등), 및 하나 이상의 압축 이미지들을 저장하는 플래시 메모리 (340) 을 구비하는 중앙 프로세싱 유닛 (CPU) (320) 을 포함하는 이미징 장치 (310) (예를 들어, 디지털 카메라 (100) 와 같은 디지털 카메라) 를 포함한다. 이미징 장치 (310) 의 기본 동작은 다음과 같다. 사용자 동작 이미징 장치 (310) 는 하나 이상의 디지털 이미지들 (사진들) 을 찍어 그 이미지 파일들을 이미징 장치 (310) 의 플래시 메모리 (340) 에 저장할 수도 있다. 그 이미지의 카메라-측 프로세싱 (예를 들어, 압축) 은 작업메모리 (즉, RAM (330)) 와 연계 작용하면서, DSP 에 의해 다루어진다. 프로세싱 이후, 이미지들은 무선 네트워크 (360) 를 통해 서버 컴퓨터 (370) 로 (예를 들어, 인터넷상의) 전송될 수도 있다. 서버 (370) 에서, 이미징 장치 (310) 로부터 수신된 이미지 데이터는 추가적인 프로세싱 (예를 들어, 그래픽들을 오버레이하는 것) 을 위해 메모리 (RAM) (390) (예를 들어, DRAM, SRAM 등) 내로 회수될 수도 있다. 그 후, 프로세스된 이미지는 서버 (370) 에 저장될 수도 있거나 또는, 원래의 장치 (예를 들어, 카메라 (100)) 로 다시 전달될 수도 있으며, 원하는 경우 다른 장치들로 전달될 수도 있다.
Ⅱ. 동적 뷰포트 레이어링
A. 도입부
컨텐트 생성자들은 사용자 사신들에 더하여 흥미있는 컨텐트를 생성하기를 원한다. 예를 들어, 컨텐트 생성자들은 사용자 사진을 흥미있는 텍스트 또는 흥미있는 애니메이션과 레이어하기를 원할 수도 있다. 이것은 황급히 컨텐트 생성을 수반한다. 그러나, 컨텐트 생성자가 황급히 컨텐트를 생성하는 경우, 생성자는 상이한 디스플레이 특성들을 가지는 장치들상에 컨텐트를 정확하게 디스플레이하거나 또는 렌더링하는 추가적인 문제점에 직면한다. 본 발명의 방법은 최종 프리젠테이션에서 발생하는 것을 설명할 수 있는 해결책을 제안하는 것이다. 예를 들어, 예시적인 설명은 이미지 상에 오버레이된 애니메이션을 가지고, 및 상부에 디스플레이되는 "해피 버스데이" 텍스트를 가지고, 이미지가 프레임으로 디스플레이되는 것을 나타낸다. 이 방식으로, 상기 해결책은 이미지가 상이한 디스플레이 특성들을 가지는 장치들상에 정확하게 디스플레이되는 것을 가능하게 한다.
보다 상세하게는, 본 발명은 2 가지의 방법을 적용한다. 본 발명의 처음 방법은 레이어링이 어떻게 수행되는지를 명시하는 설명 언어를 제공하는 것이다. 현재의 바람직한 실시형태에서, 설명언어는 XML 포맷에 따르며, 주어진 이미지를 형성하는 레이어들에 대한 계층적인 설명을 제공한다. 상이한 레이어들은 이미지들 (예를 들어 비트맵), 애니메이션, 텍스트, 벡터 그래픽 등을 포함한다. 설명 언어는 상이한 레이어들을 어떻게 함께 구성하는지를, 그리고 뷰포트에 어떻게 이들 레이어들을 디스플레이하는지를 설명하는 구문을 포함한다. 설명언어는 정확한 레이아웃을 명시하지는 않지만, 다양한 타겟 장치들의 제약들을 수용한다. 특정 이미지에 대한 일정 설명은 서버에 상주하며, 즉 그것은 타겟 장치로 전송되지 않는다. 그 대신, 타겟 장치는 최종 인코딩된 포맷 (이미지) 를 수신한다. 따라서, 설명언어는 특정 타겟 장치에 의해 부여된 제약들을 인코딩하는 것을 수용한다.
본 발명의 두번째 방법은 동적으로 뷰포트를 재형성 또는 재구성하는 것이며, 이미지가 타겟 장치에 정확하게 렌더링되는 것이다. 일정 타겟 장치에 대한 일련의 장치 제약들을 상정한다. 제약들은 픽셀에 허용된 최대 비트들 (예를 들어, 픽셀당 8비트), 최대 스크린 크기 (예를 들어, 100 픽셀 × 100 픽셀) 등과 같은 임의의 어떤 제한들을 명시한다. 본 발명에 따른 뷰포트는 당시의 타겟 장치의 제약들을 맞추기위해 동적으로 재구성된다. 또한, 복수의 제약들이 일반적으로 충족되어야 한다. 예를 들어, 타겟 장치는 최대 이미지 크기 (예를 들어, 5K 바이트) 를 명시할 수도 있다. 그 제약을 수용하기 위해, 비트깊이 (즉, 픽셀당 비트들) 를 감소시키는 것이 필요할 수도 있다. 본 발명의 방법은 장치의 제약들을 상호 만족시키는 것을 수반하여, 예를 들어, 이미지의 비트 깊이가, 5K 파일 크기 제약을 수용하기 위해, 픽셀당 4 비트로 변경될 수도 있다. 그러나, 비트 깊이는 픽셀당 8 비트 (즉, 타겟 장치에 의해 지원되는 최대 비트 깊이) 를 초과하여 허용되지는 않을 것이다. 총체적으로, 타겟 장치에 로직컬 뷰포트 (및 따라서 이미지를) 동적으로 매칭시키도록 잠재적으로 조정될 수 있는 다양한 제약들 또는 파라미터들이 존재한다.
B. 기본적인 방법론
본 발명은 양호한 이미지 품질을 유지하면서 동시에 타겟 장치들의 제약들을 충족시키는데 사용되는 양방향 선택화 (주문제작) 를 제공한다. 도 4 의 401 로 도시된 바와 같이, 각 레이어가 초기에 2 개의 기본 블록 즉, 인핸스와 뷰포트 프로세싱을 통해 플로우하는 경우에 사용된다. 전자는 레드-아이 감소, 콘트라스트 조정 등과 같은 인헨스먼트를 나타낸다. 후자는 뷰포트 칼라 및 외양 제약들이 컬러 보정, 감마, 샤프닝 등의 사용에 의해 보상되는 경우의 로직을 나타낸다.
전술한 끝부분에서, 레이어들 (예를 들어, 레이어 0과 레이어 1) 은 403 으로 도시된 바와 같이 뷰포트로 매핑될 준비가 된다. 뷰포트 사양 구성 요소 (417) 과 통신하는 파일 크기 제어 블록 (405) 은 이 매핑에 대한 뷰포트 크기 (407) 를 명시한다. 뷰포트 크기는 (예를 들어, 스크롤링 능력에 기인하여) 타겟 디스플레이보다 더 클 수도 있다. 409 에서 나타내진 바와 같이, 매핑후에 레이어들은 병합된다. 프로세스에서의 다음 단계는 411 에서 클립-패스로 뷰포트를 클립핑하는 것이다. 클립-패스는 뷰포트 유닛 사각형 (0.0, 0.0, 1.0, 1.0) 에 대응하지만, 그러나 또한, 이것은 렌더링된 레이어들 중의 어느 하나로 명시될 수 있다. 그 후, 잘려진 사각형은 컬러-깊이, 인코딩 방법, 시스템 파레트 등과 같은 장치 제약들마다 인코딩된다. 매핑 413 은 이 동작을 나타낸다. 만약 생성된 파일 크기가 파일 크기 제약을 충족시키는 경우 (415 에서 테스트됨), 이미지는 타겟 (예를 들어, 모바일) 디스플레이로 리턴된다. 그렇지 않는 경우에는, 파일 크기 제어 블록은 파일 크기 제어 블록 405 로 되돌아가는 루프에 의해 표시되는 바와 같이, 뷰포트를 리사이즈하고 뷰포트 매핑, 병합 등을 다시 시작한다.
C. 이미지 변형 API
이하, 이미지 변형을 명시하는 인터페이스를 설명한다. 인터페이스의 효과적인 사용을 위해, 레이어링 페러다임에 기초한 본 발명에 의해 사용된 이미징 모델을 이해하는 것이 유용하다. 레이어들은 예를 들어, 이미지, 텍스트, 및 벡터 그래픽 레이어들을 포함한다. 레이어들은 공간 및 임시 속성들을 가진다.
1) 공간 레이어링 : 레이어들은 그들이 서로 어떻게 적층되는지를 명시하는 "오더" 공간 속성을 가진다. 또한, Viewport_map child-element 는 레이어가 매핑되는 뷰포트의 서브-영역을 명시한다.
2) 임시 레이어링 : 레이어들은, start_time 시간, 듀레이션 등과 같은, 어떻게 레이어들이 시간적으로 배치되는지를 설명하는 임시적인 속성들을 가진다.
1. 공간 레이어링
이미지 변형 API 는 공간 효과를 생성하기 위해 어떻게 다양한 레이어들 (이미지, 텍스트, 애니메이션 등) 을 조합하는지를 설명하는 레이어링 API 이다. 도 5a 는 (지금은 임시 레이어링을 무시) 레이어링 파이프라인을 도시한다.
1) 먼저, 레이어들이 렌더링된다.
2) 그 후, 레이어들이 뷰포트상에 매핑되고 스택된다. 뷰포트는, 치수가 타겟 디스플레이의 치수와 레이어의 매핑 방법에 의해 결정되는 실제 사각형이다.
3) 레이어 스택은 뷰포트에서 병합된다.
4) 병합된 뷰포트 이미지는 요청하는 클라이언트의 (비트-깊이, 파레트, 파일 포맷 등과 같은) 디스플레이 제약들에 매칭하도록 포맷된다.
5) 그 후, 포맷된 이미지는 클라이언트에게 리턴된다.
6) 클라이언트는 그것의 디스플레이상에 그 포맷된 이미지를 디스플레이한다.
뷰포트 좌표 시스템은 "정규화된" 시스템이며 (도 5b), 여기서,
발생원은 뷰포트의 상부 좌측 코너에 있다.
X 축은 우측으로 진행한다.
Y 축은 하측으로 전진한다.
X 축 좌표는 뷰포트 폭으로 정규화된다.
Y 축 좌표는 뷰포트 높이로 정규화된다.
"뷰포트 유닛 사각형" (551) 은 좌표 (0.0, 0.0), (1.0, 1.0) 범위의 사각형이 되는 것으로 정의된다. 각 레이어는 그것의 Viewport_map 마다 뷰포트이 서브-영역으로 매핑된다. 뷰포트 맵 서브-영역의 예가 도 5b 에서 553 으로 도시된다.
2. 임시 레이어링
공간 "오더" 속성에 부가하여, 또한 레이어들은 임시 속성들 (모든 것이 밀리초로 표현됨) 을 가진다. :
1) start_time : 이것은 레이어가 제공되는 시작 시간을 명시한다. 디폴트는 0 ㎳ 이다.
2) 듀레이션 : 그 듀레이션동안 레이어가 제공된다. 디폴트값은 무한대이다 ("INF"). 또한, 0 값은 무한대의 듀레이션으로서 해석된다.
3) repeat _period : 그 주기적 레이트로 프리젠테이션이 반복된다. 디폴트값은 무한대이다 ("INF"). 또한, 0값은 무한대로서 해석된다. 양쪽 값들은 애니메이션이 결토 반복되지않게 한다.
3. XML 방법
XML API 를 사용하여 레이어링이 달성된다. 이 방법에서 (arg, val) 쌍 "enh=<XML_URL>" 는 사용되는 XML URL 을 명시한다.
예:
http://eswitch.foo.com/es?src=http://source.foo.com/images/img1.jpg&enh=http://source.foo.com/templates/enhance.xml.
1) src 이미지 (http://source.foo.com/images/img1.jpg) 는 임의의 백그라운드 레이어 (레이어 넘버 0) 와 XML 인핸스먼트 파일에서 명시된 다른 레이어들 사이에 삽입된 소스 레이어가 된다.
2) XML (구성) 파일은 다른 레이어들을 설명한다. 부가적으로, 그것은 뷰포트 제약들을 설명한다.
3) XML 인핸스먼트 방법은 URL 라인 (arg, val) 쌍들과 연계하여 사용될 수도 없다 (즉, 두 방법은 상호 배타적이다).
4. XML 계층
도 5c 에 XML API 에 사용되는 오브젝트들의 계층이 도시된다. 그레이 라인들은 속성들을 지시한다. 짙은 선은 엘리멘트를 나타낸다. 이 계층에서, 속성들은 단순 타입으로 나타나고, 엘리멘트들은 복잡한 타입으로 나타난다. 연속적인 섹션들이 보다 상세하게 엘리멘트들과 속성들을 설명한다. 계층에서의 어떤 엘리멘트들 및 속성들은 고급 사용자들을 위한 것이고 그레이 (약화된) 텍스트로 도시된다.
5. 이미지 변형
이미지 변형은 이미지 레이어링 동작의 세부사항을 감싸는 엘리멘트 테그로 이루어진다.
표 : 이미지 변형
속성 유효값 설명
xmlns "http://www.lightsurf.com/eswitch2/image_transform/1.0" 이미지 변형 마크업 (Image Transform Markup)의 네임스페이스 (namespace) 및 리비전 (revision)
Child-element 설명
image_layer 이미지 레이어
text_layer 텍스트 레이어
bezier Layer Bezier 곡선으로 형상을 정의하기 위한 레이어
Viewport 출력으로 매핑되는 방법을 결정하는 뷰포트 제약들과 능력들
6. 레이어들의 공통 특성들
레이어들은 공간 및 임시 행동을 설명하는 공통 특성들을 가진다.
a) 공간 특성들
레이어의 공간 특성들은 "오더" 속성과 "viewport_map" child-element에 의해서 결정된다.
표 : 레이어의 공간 속성들
속성 유효값 설명
오더 1 내지 n 이것은 뷰포트상의 프리젠테이션의 공간 오더를 나타내는 상대적 넘버이다. 더 큰 오더를 가지는 레이어들은 더 작은 오더를 가지는 레이어들의 상부에 스택된다.
Child Element 설명
Viewport_map 이것은 레이어가 어떻게 뷰포트에 매핑되는지를 설명한다.
Viewport_map 는 모든 레이어들에 대한 공통 엘리멘트이다. 이것은 어떻게 레이어가 뷰포트로 매핑되는지를 결정한다. 매핑은, 다음의 윈도우와 모드에 기초한다.
윈도우 : 이것은 레이어가 매핑되어지는 뷰포트의 영역이다. 디폴트에 의해 윈도우는 뷰포트에 놓인다.
모드 : 이것은 어떻게 레이어를 윈도우내로 맞추는지를 설명한다. 디폴트는 "fit"이다.
다음의 (고급) 엘리멘트들은 상기 매핑 이후에 이미지를 재포지션하는데 유용하다.
얼라인 : 이것은 어떻게 레이어가 윈도우내로 얼라인하는지를 설명한다. 명시되지 않은 경우, 센터 얼라인먼트가 가정된다.
오프셋 : 이것은 레이어가 매핑된 이후 레이어에 오프셋이 적용되어야만 하는 것을 나타낸다. 명시되지 않은 경우, (0.0, 0.0) 의 오프셋이 가정된다.
표 1 Viewport_map
속성 유효값 설명
모드 다음중의 어느 하나 :˙Fit (디폴트)˙Fill˙Force˙As-is 레이어를 윈도우에 매핑하는 방법. 이 방법은 윈도우에 레이어의 초기 매핑이 어떻게 발생하는지를 정의한다. 윈도우 외부의 레이어 영역들은 윈도우에 클립된다 (clipped).˙ Fit : 레이어가 윈도우내에 맞춰지도록 스케일되는 것을 의미한다. 레이어의 애스펙트 비은 유지된다. 이미지는 단지 1 차원을 따라 윈도우를 채운다.˙Fill : Fill 은 윈도우를 채우도록 이미지를 스케일한다. 이미지의 부분들은 잘려진다 (corpped).˙Force : 윈도우를 채우기 위해 레이어의 애스펙트 비를 스케일하고 조정한다.˙As-is : 매핑동안에 어떤 스케일링도 수행하지 않는다.˙Fit-to-width : 레이어의 폭이 뷰포트 폭으로 리사이즈되는 것을 의미한다. 레이어의 애스펙트 비는 유지된다. 레이어는 높이를 따라 뷰포트를 오버플로우한다 (따라서 잘려진다).
Child Element 사용법 설명
윈도우 <windowx ="<LT_x>"y ="<LT_Y>"width="<WIDTH>"height="<HEIGHT>"/> 뷰포트의 서브영역에서 레이어 매핑을 함. (x, y) 속성들은 상부-좌측 코너를 정의하고, 폭과 높이 속성들은 크기를 정의한다.˙<LT_x> : 좌측 상부 x 좌표. 디폴트들 0.0 으로˙<LT_Y> : 좌측 상부 y 좌표. 디폴트들 0.0 으로]˙<WIDTH> : 윈도우의 폭. 디폴트들 1.0 으로˙<HEIGHT> : 윈도우이 높이. 디폴트들 1.0 으로
얼라인 <alignxalign ="<ALIGNX>"yalign ="<ALIGNY>"/> 이 Child element 는 매핑동안에 레이어가 어떻게 윈도우에서 X 및 Y축으로 얼라인되는지를 설명한다.˙<ALIGNX> : "좌측", "우측", 또는 "중앙" 중의 어느 하나가 될 수 있다. 디폴트들 "중앙"으로.˙<ALIGNY> : "상부", "바닥", 또는 "중앙" 중이 어느 하나가 될 수 있다. 디폴트들 "중앙으로"
오프셋 <offsetx ="<OFFSET_X>"y ="<offset_Y>"/> 매핑과 얼라인먼트 이후 레이어를 오프셋하는 양.˙<OFFSET_X> : X 방향으로 오프셋하는 양. 디폴트들 0.0 으로˙<offset_Y> : Y 방향으로 오프셋하는 양. 디폴트들 0.0 으로주의 : 매핑, 얼라인먼트, 및 오프셋 이후, 레이어는 뷰포트 맵 윈도우로 클립되며, 즉 윈도우의 외부에 위치한 레이어는 보이지 않는다.
b) 시간적 특성들
시간적 속성들 : start_time, 듀레이션, 및 repeat_period는 모든 레이어들에 의해 지원된다.
표 : 레이어의 시간적 특성
속성 유효 값 디폴트 설명
start_time >= 0 ms 0 ms 레이어의 프리젠테이션의 시작 시간
듀레이션 > 0 ms 무한 프리젠테이션의 지속기간
repeat_period 0 ms 레이어들이 아래의 제약을 충족시켜야한다.ㆍStart_time+듀레이션<=repeat_period
7. 이미지 레이어
이미지 레이어의 속성 및 child-element 는 어떻게 생성되고 뷰포트내의 윈도우에 매핑되는지를 결정한다.
표 : 이미지 레이어의 속성 및 엘리멘트
속성 유효값 디폴트 설명
오더 섹션 6 참조
start_time
듀레이션
repeat_period
src A URL 소스 이미지
Child Element 설명
Viewport_map 이것은 레이어이 뷰포트에 어떻게 매핑하는지를 설명한다.
a) 소스 이미지 레이어
"src=<IMAGE_URL>"(arg,val) 쌍에 의해 특정된 이미지는 "소스" 이미지가 된다. 이러한 레이어는 임의의 백그라운드 (레이어 순서 0) 와 나머지 레이어들 사이에 삽입된다. 이러한 레이어는 Viewport_map에 대한 디폴트 속성과 Child-element 를 갖는다.
8. 텍스트 레이어
이러한 레이어는 텍스트 번역을 지원한다.
표 : 텍스트 레이어의 속성 및 엘리멘트
속성 유효값 디폴트 설명
오더 상기 참조
start_time
듀레이션
repeat_period
text UTF-8 단일코드 스트링 없음 텍스트 스트링이 UTF-8 스트링으로서 정의된다. 이 포맷은 단일코드 표준에 의해 정의된 임의의 문자를 지원할 수 있다. 특정된 폰트 파일이 단일코드 값에 대한 문자를 제공하는 한은, 문자는 지원된다.
centerx 예, 아니오 X 방향에서의 센터링ㆍ"아니오"의 값은 텍스트를 좌측 경계에 얼라인한다.
centery 예, 아니오 Y 방향에서의 센터링ㆍ"아니오"의 값은 텍스트를 바닥 경계에 얼라인한다.
font_file 폰트 디렉토리에서의 참(true)형 파일 이름 없음 폰트 파일은 참형 파일이어야 한다. 이 파일은 단일 페이스(*.ttf) 또는 다중 페이스 참형 집합(*.ttc) 파일일 수도 있다.
font_color 컬러 0x000000(블랙) 컬러는 0xRRGGBB(RR=레드, GG=그린, BB=블루)와 같은 헥스 포맷에서 특정된다.
font_mode ㆍ오토ㆍ고정 오토 ㆍ오토:o폰트 크기는 윈도우에서 특정된 텍스트를 적합하게 하도록 자동 결정된다.ofont_size_min 속성이 적용된다.ㆍ고정:ofont_size는 "포인트"(1포인트=1/64)에서 특정된다.ofont_size_min 속성은 무시된다.
font_size 4-128 12 고정 모드 폰트에 대해 사용하기 위한 폰트의 크기는 포인트에서 특정된다.
font_size_min 4+ 6 이 파라미터는 "자동" 모드에서 유용하고, 폰트 크기가 이러한 레벨 아래도 떨어지지 않아서, 소형 디스플레이를 갖는 장치에서도 "이해할 수 있는" 텍스트를 발생한다는 것을 보장하기 위해 사용될 수 있다.
Child Element 설명
Viewport_map 맵, 얼라인, 및 오프셋이 무시된다 (즉, 윈도우 엘리멘트만이 사용된다).
9. 베지어 (Bezier) 레이어
베지어 레이어는 벡터 그래픽을 오버레이하기 위해 사용된다. 이 레이어의 목적은 다이나믹 텍스트 삽입 능력을 갖는 벡터 그래픽을 지원하는 것이다.
표 : 베지어 레이어의 속성 및 엘리멘트
속성 유효값 디폴트 설명
오더 상기 참조
start_time
듀레이션
repeat_period
src URL 특정되어야 함 아도비 일러스트레이터 Al8 EPS 파일 포맷에서 베지어 커브를 특정하는 파일에 대한 경로이름. 경로이름은 .eps 확장을 가져야 한다.
오더 1 내지 n 특정되어야 함 순서는 최종 출력이 생성될 때 레이어들의 스택킹을 정의한다. 더 높은 번호가 낮은 번호의 상위에 제공된다.
opacity 0-100 100 그래픽의 전체 불투명도
Child Element 설명
Text_box 이것은 베지어 레이어에 삽입되어야 하는 텍스트를 설명한다.
Viewport_map 이미지 레이어와 동일
표 : 베지어 레이어의 Text_box 엘리멘트
속성 유효값 디폴트 설명
text 텍스트 레이어에서 대응하는 속성과 동일
centerx
centery
font_file
font_color
font_mode
font_size
font_size_min
Child Element 설명
bounding_box 이것은 아도비 일러스트레이터 파일의 포인트 좌표 공간에서 특정된 텍스트에 대한 바운딩 박스이다.ㆍ사용:<bounding_box x="<llx>" y=<ury> width="<width>" height="<height>".o<llx>: 포인트에서 하위 좌측 X 좌표.o<ury>: 포인트에서 상위 우측 Y 좌표.o<width>: 포인트에서 바운딩 박스의 폭.o<height>: 포인트에서 바운딩 박스의 높이.텍스트 바운딩 박스를 결정하는 절차 :ㆍ아도비 일러스트레이터에서 관심있는 그래픽 오픈ㆍ선택 : 파일->문서 설정->유닛->포인트ㆍ사각형 툴을 사용하여 텍스트 바운딩 박스 영역을 그린다.ㆍ선택 툴을 사용하여 사각형 선택.o이것은 사각형을 하이라이트하고 "info palette"에서 바운딩 박스 정보를 나타낸다. 이것은 XML 레이어 사양에 입력되어야 하는 바운딩 박스 정보이다. info palette에서의 (X,Y,W,H) 는 llx, lly, with, height에 대응한다.ㆍ사각형 삭제 - 이것은 더 이상 필요하지 않다 (이것은 텍스트 바운딩 박스를 결정하기 위해서만 유용하다).
10. 뷰포트
레이어가 뷰포트 상에 매핑되어 통합되면, 그렇게 생성된 이미지는 뷰포트 엘리멘트에서 특정된 제약에 따라서 클라이언트의 우선 이미지에 매핑된다.
표 : 뷰포트 엘리멘트
속성 유효값 디폴트 설명
aspect_layer 이미지 레이어 순서 번호 또는 -1 최하위 이미지 레이어 애스펙트(또는 "앵커")레이어는 모든 다른 레이어들을 위치시킬 때 앵커로서 사용되는 레이어를 결정한다. 애스펙트 레이어는 뷰포트의 애스펙트비 (상기 참조) 를 결정한다.
force_colors URL 컬러는 강요되지 않는다. 이러한 엘리멘트는 강요될 컬러를 정의한다. 강요될 컬러의 세트는 아래의 포맷(상기 참조) 중의 하나에서 특정된다.ㆍACT(.act):아도비 액티브 테이블 포맷(.act).ㆍGIF(.gif)ㆍPNG(.png)
a) 애스펙트/앵커 레이어
본 발명은 뷰포트의 폭을 타겟 장치의 폭으로 설정한다. 그러나, 뷰포트 높이는 aspect_layer에 의해 정의된 바와 같은 애스펙트비에 기초하여 결정된다.
ㆍaspect_layer ==-1 : 이것은 가장 단순한 경우이다. 이러한 경우에, 애스펙트비는 타겟 장치의 디스플레이의 애스펙트비와 동일하다.
예 : 타겟 이동 장치는 100x120이다. 그 후, 본 발명은 100x120인 뷰포트를 생성한다.
ㆍaspect_layer == 어떤 이미지 레이어의 순서 번호 : 이미지 레이어의 애스펙트비는 뷰포트의 높이를 결정한다.
예 : 이미지는 640x480이다. 이동 장치는 100x100이다. 그 후, 본 발명은 100x75인 뷰포트를 생성한다. 좌표 시스템이 뷰포트로 정규화되기 때문에, 모든 레이어는 이러한 이미지 레이어에 상대적이다.
ㆍaspect_layer unspecified(default) : 애스펙트 레이어가 "최하위"("순서"에 관하여) 으로 특정되지 않은 경우에, 이미지 레이어가 애스펙트 레이어로서 사용된다. 이미지 레이어가 없는 경우에, aspect_layer은 -1로 설정된다.
처음에 뷰포트 디멘 치수가 전술한 방법에 따라 결정되더라도, 치수는 파일 크기 제약을 충족시키기 위해 조정될 수도 있다. 애스펙트비는 뷰포트가 리사이즈 (resized) 될 때 보존된다.
b) Force_colors
강요될 컬러의 세트는 아래의 포맷중의 하나에서 특정된다.
1) ACT(.act) : 아도비 액티브 테이블 포맷(.act). 이것은 컬러 테이블을 정의한다. 컬러 테이블에서의 컬러의 세트가 사용된다.
2) GIF(.gif) : 컬러의 세트는 GIF 이미지에서 나타나는 제 1 컬러 파레트이다.
3) PNG(.png) : 컬러의 세트는 PNG 이미지에서 나타나는 제 1 컬러 파레트이다.
이동 장치는 통상적으로 아래의 컬러 모드중의 하나를 갖는다.
7) True Color : 이러한 모드에서, 시스템은 임의의 컬러를 디스플레이할 수 있다. Force_colors는 이러한 경우에 영향을 미치지 않는다.
8) Indexed Color : 이러한 모드에서, 시스템은 제한된 수의 컬러를 디스플레이할 수 있다. Indexed color 모드내에 2개의 서브-모드가 있다.
a. Fixed palette : 고정된 파레트를 갖는 장치는 불가변이고 "force_colors"을 수용할 수 없다. force_colors 지시는 이들 장치에 대해 무시된다.
b. Adaptive palette : 장치의 큰 클래스는 컬러의 소형 세트 (즉, 256) 를 수용할 수 있지만, 컬러는 임의의 컬러일 수 있다. Force_colors가 이러한 경우에 가장 유용하다.
시스템이 force_colors 보다 더 많은 컬러를 지원할 수 있는 경우에, force_colors에서의 모든 컬러가 사용된다. 시스템이 force_colors 보다 적은 컬러를 지원할 수 있는 경우에, force_colors의 서브세트가 사용된다.
11. 클래스 정의
이미지 변형 클래스, 이미지 레이어 클래스 및 뷰포트 클래스의 C++ 클래스 정의를 여기에 나타낸다.
a) 이미지 변형
b) 레이어 클래스
레이어 클래스는 모든 레이어들 (이미지, 텍스트 등) 이 유도되는 기본 클래스이다.
c) 이미지 레이어 클래스
이미지 레이어는 레이어 클래스로부터 유도된다.
d) 뷰포트 클래스
12. 레이어링 예
아래의 서브 섹션은 레이어링 API에 기초한 XML을 사용의 예를 나타낸다.
a) 그래픽 오버레이
이 예는 아래의 제약 하에서 소스 이미지 상에 그래픽을 어떻게 오버레이하는지를 나타낸다.
o이미지가 뷰포트에 "피트"된다.
o그래픽이 바닥 좌측 코너에서 뷰포트상에 있는 그대로 패스트된다.
요청 URL은 : http://eswitch.foo.com/es?src=http://source.foo.com/boy.jpg&enh=http://source.foo.com/enhance.xml이다.
인핸스먼트 XML은 :
b) 프레이밍
이 섹션은 이미지에 대한 프레임 오버레잉의 예이다. 요청 URL은 :
http://eswitch.foo.com/es?enh=http:/source.foo.com/enhance.xml이다.
인핸스먼트 XML을 아래에 나타낸다 :
뷰포트의 aspect_layer 속성이 2로 설정된다. 이것은 뷰포트가 이미지 레이어 2, 즉, 이미지 레이어 2와 동일한 애스펙트비을 갖도록 강요한다.
Image_layer 2는 컴플리트 뷰포트에 매핑된다.
이미지 레이어 1은 "플라우어"에서의 투명도와 얼라인하는 서브-윈도우에 매핑된다.
c) 텍스트 오버레이
이 예는 뷰포트의 바닥 20%상에 텍스트를 오버레이한다.
D. 내부 동작의 요약
1. 전체 동작
도 6A-B는 다이나믹 뷰포트 레이어링을 지원하는 본 발명에 의해 채용된 전체 방법론 (600) 을 도시하는 흐름도를 포함한다. 시작에서, 스톡 HTTP 서버 (예를 들어, 아파시 서버) 가, 단계 601에 나타낸 바와 같이, 타겟 이미지를 (예를 들어, 이미지 저장소로부터) 검색하기 위해,(브라우저) 클라이언트로부터 URL과 같은 온라인 요청 (예를 들어, HTML 요청) 으로 호출된다. 클라이언트로부터의 이러한 HTTP 인보케이션 (온라인 요청) 은 URL 플러스 (클라이언트 브라우저 타입을 식별하는 헤더를 포함하는) 헤더를 포함하는 HTTP GET 명령을 포함한다. URL 자체는 예를 들어, 위치를 특정하고 이름/값 쌍들을 수반함으로서, 통상의 웹 기반 URL을 포함할 수도 있다. 클라이언트가 HTTP 서버를 직접 호출할 때, HTTP 서버는 시스템의 프런트 엔드로서 생각될 수도 있다. 플러그-인 모듈 (eSwitch™핸들러) 가 단계 602에 나타낸 바와 같이, 인입 요청을 분기하기 위해 사용된다. 이제, eSwitch™핸들러는, 단계 603에 나타낸 바와 같이 브라우저 클라이언트를 식별하기 위해 HTTP GET 헤더들을 검사할 수도 있고, 이러한 식별로부터, 핸들러는 타입을 추정할 수도 있거나 클라이언트 장치 (즉, 장치 타입) 를 식별할 수도 있다. 단계의 동작 동안에, 핸들러는, 예를 들어, 상기 공통적으로 참조한 2000년 6월 6일에 출원한 출원 번호 제 09/588,875 호 및 2001년 11월 8일에 출원한 출원 번호 제 10/010,616 호에 설명되어 있는 바와 같이, 헤더를 적절한 장치와 매칭하도록 장치 데이터베이스에 컨설트한다.
장치의 식별 이후에, 단계 604에서, 핸들러는 XML (구성) 파일 페치를 계속한다. (단계 601에서) 클라이언트에 의해 제출된 URL은 (뷰포트 및 레이어들 모두를 설명하는) 이미지 변형 트리에 대한 값들을 계층적 형태로 저장한 이름/값 쌍, 특정한 XML 파일중의 하나로서 특정된다. 단계 605에서, 페치된 XML 파일은 스톡 XML 파서 (parser) 를 사용하여 분석될 수도 있다. 그 후, 분석된 값들/속성들이 이미지 변형 트리의 인-메모리 카피를 생성하기 위해 사용된다.
다음 단계는 단계 606에 도시한 바와 같이, 이미지 변형 트리에서의 속성들 및 그 값들 (예를 들어, 레이어링 정보) 모두와 클라이언트 데이터베이스로부터 유도된 뷰포트 정보를 통합하는 것이다. 단계 607에서, 이미지 변형 모듈을 호출할 때, 방법은 이미지를 실제로 렌더 (즉, 클라이언트에 대해 최적화되거나 주문 제작된 버전을 동적으로 생성) 하는 것을 계속한다. 특히, 관심있는 이미지가 이미지 변형 트리에서의 레이어링 및 뷰포트 정보에 따라 식별된 클라이인트 장치의 뷰포트에 렌더링되고; 클라이언트의 이미지 포맷 고려 (예를 들어, JPEG 포맷 요구) 가 이미지를 변형함으로써 요구된 포맷으로 적용될 수도 있다. 상술한 프로세스는 반복적 패션으로 발생할 수도 있다. 예를 들어, 동적으로 생성된 버전이 클라이언트 장치에 대해 너무 큰 것으로 여겨지거나 클라이언트의 능력을 초과하는 비트 깊이를 갖는 경우에, 단계는 컴플라이언트인 버전을 생성하기 위해 반복된다. 소정의 반복 동안에, 인코딩/랜더링 파라미터들 (예를 들어, 이미지 치수) 이 클라이언트 장치에 대해 최적화된 이미지의 주문 생성을 달성하기 위해 동적으로 조정될 수도 있다. 최종으로, 단계 608에 나타낸 바와 같이, 방법은 적절한 포맷으로 클라이언트 장치 (예를 들어, 무선 접속을 통해, 인터넷 접속을 통해, 무선 인터넷 접속을 통해) 로 역으로 송신되는 완전히 렌더링된 이미지 (제약에 따라) 를 방출한다. 이 이미지는 원하는 경우에, (예를 들어, 동일한 장치 타입에 의한) 장래의 검색을 위해 캐시될 수도 있다.
2. 이미지 변형 오브젝트
XML 설명을 거의 반영하는 이미지 변형 오브젝트 클래스 정의 (class Image Transform) 는 다양한 이미지 레이어들을 생성/지원하는데 책임이 있는 데이터 부분을 포함한다. 각 레이어 자체가 정당하게 오브젝트이다. 이미지 변형 오브젝트가 예시될 때, 모든 수록된 오브젝트가 유사하게 예시된다.
이미지 변형 오브젝트는 "렌더" 방법, Render()을 포함한다. 기본 동작에서, "렌더" 방법은 각 레이어가 정확하게 렌더되도록 각 수록된 오브젝트에 대한 대응하는 렌더링 방법을 호출한다. 렌더링은 뷰포트의 인-메모리 버전, 즉, 뷰포트 오브젝트에 대해 발생한다. 결국, 각 수록된 오브젝트는 "후보" 렌더 이미지를 발생시키는 뷰포트 오브젝트에 대해 렌더된다. 다음으로, 후보 이미지는 후보 변형 이미지를 발생시키는, 클라이언트에 대해 적절한 포맷으로 인코딩 (예를 들어, JPEG 인코딩) 된다. 후보 이미지가 변형되면, 그렇게 발생한 이미지는 도 4에 도시한 바와 같이, 적용가능한 제약 (예를 들어, 파일 크기) 와의 컴플라이언스에 대해 체크된다. 예를 들어, 완전히 렌더된 이미지가 JPEG로 변형되는 경우에, 그렇게 발생한 JPEG 파일은 파일이 최대 특정 파일 크기를 초과하는 경우에 최종 출력으로서 허용될 수 없다. 따라서, 타겟 클라이언트에 적용할 수 있는 제약에 따르는 최종 이미지 파일을 생성하기 위해, 뷰포트를 "재매핑"하고 (필요한 경우에) 이미지를 재-렌더링하는 것을 포함하는 프로세스를 반복할 수도 있다. 내부적으로, 풀 크기 제어 블록은 새로운 파일 크기를 얻기 위해 상이한 세트의 (제어) 파라미터 (예를 들어, 뷰포트 크기, 비트 깊이, JPEG 품질 등을 감소) 를 추정한다. 예를 들어, 변형된 후보 이미지의 크기가 너무 큰 경우에, 방법은 더 작은 파일 크기를 갖는 변형된 후보 이미지를 생성하기 위해 더 작은 스크린 크기로 뷰포트를 리셋할 수도 있다.
본 발명을 단일의 바람직한 실시형태 및 특정한 대안을 참조하여 설명하였지만, 본 발명은 특정한 실시형태 또는 특정한 대안에 제한되지 않는다. 예를 들어, 클라이언트 장치에서의 "디스플레잉" 이미지에 대해 집중한 실시예들을 제공하였다. 당업자는 프린팅과 같은 다른 클라이언트측 출력 또는 렌더링이 본 발명의 애플리케이션으로부터 이점이 될 수도 있다는 것을 이해할 것이다. 따라서, 당업자는 변형이 본 발명의 취지를 벗어나지 않고 바람직한 실시형태에 대해 이루어질 수도 있다는 것을 이해할 것이다.

Claims (50)

  1. 클라이언트 장치로 송신된 이미지의 디스플레이를 동적으로 최적화하는 방법으로서,
    디스플레이를 위해 타겟 이미지를 검색하는 특정한 클라이언트 장치로부터 온라인 요청을 수신하는 단계로서, 상기 요청은 상기 클라이언트 장치에 대한 장치 타입의 결정을 돕는 정보를 포함하며, 상기 타겟 이미지는 개별 레이어들로 배열된 이미지 요소를 포함하는, 상기 온라인 요청을 수신하는 단계;
    상기 요청에 기초하여, 상기 특정한 클라이언트 장치에 대한 장치 타입을 결정하는 단계;
    상기 결정된 장치 타입에 기초하여, 상기 특정한 클라이언트 장치에 대한 뷰포트 및 레이어링 정보를 특정하는 정보를 검색하는 단계;
    상기 뷰포트 및 레이어링 정보에 기초하여, 상기 특정한 클라이언트 장치에서의 디스플레이를 위해 최적화된 타겟 이미지의 버전을 생성하는 단계; 및
    상기 타겟 이미지의 생성된 버전을 디스플레이를 위해 상기 클라이언트 장치로 송신하는 단계를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  2. 제 1 항에 있어서,
    상기 장치 타입을 결정하는 단계는, 상기 클라이언트 장치에 대한 장치 타입을 결정하도록 장치 데이터베이스에 컨설팅하는 단계를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  3. 제 2 항에 있어서,
    상기 장치 데이터베이스에 컨설팅하는 단계는, 상기 특정한 클라이언트 장치에 대한 이미지의 디스플레이를 최적화하기 위해 사용 가능한 특정한 구성 파일을 나타내는 정보를 상기 장치 데이터베이스로부터 검색하는 단계를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  4. 제 3 항에 있어서,
    상기 특정한 구성 파일은 상기 특정한 클라이언트 장치에 관한 디스플레이 능력 정보를 특정하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  5. 제 3 항에 있어서,
    상기 특정한 구성 파일은 상기 특정한 클라이언트 장치에 대한 뷰포트 및 레이어링 정보를 특정하는 SML 파일을 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  6. 제 1 항에 있어서,
    상기 온라인 요청은 웹-기반 요청을 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  7. 제 1 항에 있어서,
    상기 온라인 요청은 HTML-기반 요청을 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  8. 제 1 항에 있어서,
    상기 온라인 요청은 특정한 타겟 이미지를 식별하는 정보를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  9. 제 1 항에 있어서,
    상기 온라인 요청은 상기 특정한 클라이언트 장치에서 동작하는 브라우저로부터 개시되고 상기 클라이언트 장치의 특정한 타입을 식별하는 정보를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  10. 제 1 항에 있어서,
    상기 온라인 요청은 URL을 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  11. 제 1 항에 있어서,
    상기 특정한 클라이언트 장치에 대한 장치 타입의 결정을 돕는 상기 정보는 상기 온라인 요청과 함께 송신된 헤더 정보를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  12. 제 11 항에 있어서,
    상기 온라인 요청과 함께 송신된 상기 헤더 정보는 어떤 특정 타입의 장치가 상기 특정한 클라이언트 장치인지를 결정하기 위해 장치 타입의 데이터베이스에 대해 비교되는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  13. 제 1 항에 있어서,
    상기 특정한 클라이언트 장치에 대한 장치 타입의 결정을 돕는 상기 정보는 HTTP 헤더 정보를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  14. 제 1 항에 있어서,
    상기 특정한 클라이언트 장치에 대한 뷰포트 및 레이어링 정보를 특정하는 상기 정보를 XML 파일에서 계층적 형태로 유지되는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  15. 제 14 항에 있어서,
    상기 XML 파일은 상기 특정한 클라이언트 장치의 장치 제한에 기초하여 제약값을 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  16. 제 15 항에 있어서,
    상기 제약값은 상기 특정한 클라이언트 장치에서 디스플레이될 수 있는 최대 이미지 크기를 나타내는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  17. 제 1 항에 있어서,
    상기 클라이언트 장치에서의 디스플레이를 위해 최적화된 상기 타겟 이미지의 버전을 생성하는 단계는,
    상기 특정한 클라이언트 장치에 대한 상기 뷰포트 및 레이어링 정보에 따르는 방식으로 개별 레이어들에서 상기 이미지 요소를 렌더링하는 단계를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  18. 제 1 항에 있어서,
    상기 클라이언트 장치에서의 디스플레이를 위해 최적화된 상기 타겟 이미지의 버전을 생성하는 단계는,
    상기 클라이언트 장치에서의 디스플레이를 위해 최적화된 적절한 타겟 이미지가 발견될 때까지 상기 뷰포트 및 레이어링 정보에 기초하여 상기 타겟 이미지의 상이한 버전을 반복적으로 생성하는 단계를 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  19. 제 1 항에 있어서,
    상기 타겟 이미지의 생성된 버전을 상기 특정 클라이언트 장치로 송신하기 이전에, 상기 생성된 버전을 상기 클라이언트 장치에 대해 적합한 파일 포맷으로 변형하는 단계를 더 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  20. 제 19 항에 있어서,
    상기 파일 포맷은 JPEG-호환 파일 포맷을 포함하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  21. 제 1 항에 있어서,
    상기 레이어 각각은 소정의 타입의 이미지 요소를 유지하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  22. 제 21 항에 있어서,
    소정의 레이어는 비트맵, 애니메이션, 텍스트, 및 벡터 그래픽중의 하나로부터 선택된 이미지 요소를 유지하는, 이미지의 디스플레이를 동적으로 최적화하는 방법.
  23. 제 1 항의 방법을 수행하는 프로세서-실행 가능 지시를 갖는 컴퓨터-판독 가능한 매체.
  24. 제 1 항의 방법을 수행하는 프로세서-실행 가능 지시의 다운로드 가능한 세트.
  25. 특정한 장치 타입에 대해 주문제작된 이미지의 주문 생성을 위한 시스템으로서,
    별개의 레이어로 배열된 이미지 요소를 각각 포함하는 이미지에 대한 저장소로서 기능하는 모듈;
    상기 저장소로부터 특정한 이미지를 검색하는 장치로부터의 요청을 프로세싱하고, 상기 요청에 포함된 정보에 부분적으로 기초하여 상기 장치에 대한 특정한 장치 타입을 결정하는 모듈; 및
    상기 장치에 대해 주문제작된 특정한 이미지의 카피를 생성하고, 상기 특정한 이미지의 별개 레이어에서 상기 이미지 요소의 적어도 일부가 상기 장치에 대해 주문제작되도록 상기 결정된 장치 타입에 기초하여 상기 특정한 이미지의 별개 레이어에서 이미지 요소를 개별적으로 렌더링하는 모듈을 구비하는, 시스템.
  26. 제 25 항에 있어서,
    상기 특정한 이미지의 카피는 상기 장치의 뷰포트 제약에 따르는 방식으로 생성되는, 시스템.
  27. 제 25 항에 있어서,
    상기 특정한 이미지의 카피는 상기 장치의 이미지 크기 제약에 따르는 방식으로 생성되는, 시스템.
  28. 제 25 항에 있어서,
    상기 특정한 이미지의 카피를 상기 장치와 호환 가능한 이미지 포맷으로 변형하는 모듈을 더 구비하는, 시스템.
  29. 제 25 항에 있어서,
    요청을 프로세싱하는 상기 모듈은 서버 컴퓨터상에서 동작하는, 시스템.
  30. 제 29 항에 있어서,
    상기 서버 컴퓨터는 인터넷 접속을 포함하는, 시스템.
  31. 제 25 항에 있어서,
    상기 장치는 무선 접속을 통해 상기 시스템과 통신하는, 시스템.
  32. 제 25 항에 있어서,
    상기 장치는 인터넷으로의 무선 접속을 통해 상기 시스템과 통신하는, 시스템.
  33. 제 25 항에 있어서,
    상기 장치에 대해 주문제작된 상기 특정한 이미지의 카피를 캐시하는 이미지 캐시를 더 포함하는, 시스템.
  34. 제 25 항에 있어서,
    상기 요청은 HTML 요청을 포함하는, 시스템.
  35. 제 25 항에 있어서,
    상기 요청은 상기 장치에서 동작하는 브라우저로부터 개시되는, 시스템.
  36. 제 25 항에 있어서,
    상기 요청은 장치 타입의 결정을 허용하는 헤더 정보를 포함하는, 시스템.
  37. 제 36 항에 있어서,
    상기 헤더 정보에 기초하여 상기 장치 타입의 식별을 돕는 장치 데이터베이스를 더 포함하는, 시스템.
  38. 제 37 항에 있어서,
    상기 장치 데이터베이스는 상기 장치에 대해 주문제작된 상기 특정한 이미지의 카피를 생성하는데 유용한 가용 구성 파일을 나타내는, 시스템.
  39. 제 25 항에 있어서,
    상기 구성 파일은 상기 장치에 대한 레이어링 및 뷰포트 정보를 특정하는 XML 파일을 포함하는, 시스템.
  40. 제 25 항에 있어서,
    상기 카피를 생성하는 모듈은, 상기 장치에서의 디스플레이를 위해 최적화된 적절한 이미지가 생성될 때까지 상기 특정한 이미지의 상이한 후보를 반복적으로 생성하는, 시스템.
  41. 요청된 이미지의 디스플레이를 최적화하는 개선점을 포함하는 이미지 검색 방법으로서,
    상기 개선점은,
    각각의 이미지를 특정 타입의 이미지 요소를 갖는 상이한 레이어로 구성하는 단계;
    소정의 이미지를 디스플레이할 장치의 특정한 타입에 대해 소정의 레이어를 어떻게 최적화할지를 나타내는 정보를 저장하는 단계;
    특정한 이미지를 검색하는 요청을 수신할 때, 상기 특정한 이미지를 요청하는 장치의 타입이 무엇인지를 식별하는 단계;
    상기 특정한 이미지를 요청하는 장치의 타입에 기초하여, 상기 이미지를 요청하고 있는 장치에 대해 상기 이미지의 소정의 레이어를 어떻게 최적화하는지를 나타내는 저장된 정보를 검색하는 단계; 및
    상기 검색된 정보에 기초하여, 상기 장치에서의 디스플레이를 위해 최적화된 렌더링된 이미지를 동적으로 생성하기 위해 상기 이미지의 개별 레이어를 렌더링하는 단계를 포함하는, 이미지 검색 방법.
  42. 제 41 항에 있어서,
    상기 렌더링하는 단계가 상기 장치에 대한 적절한 제약에 따르는 방식으로 수행될 수도 있도록, 장치의 상이한 타입에 대한 뷰포트 정보를 유지하는 단계를 더 포함하는, 이미지 검색 방법.
  43. 제 41 항에 있어서,
    동적으로 생성된 상기 렌더링된 이미지가 특정한 이미지를 요청하는 상기 장치에 대해 너무 큰 이미지 크기를 갖는 경우에, 상기 렌더링하는 단계는 작은 이미지 크기를 갖는 이미지를 생성하기 위해 반복되는, 이미지 검색 방법.
  44. 제 41 항에 있어서,
    소정의 레이어는 비트맵, 애니메이션, 텍스트, 및 벡터 그래픽중의 하나로부터 선택된 이미지 요소를 유지하는, 이미지 검색 방법.
  45. 제 44 항에 있어서,
    하나의 레이어가 경계를 렌더링하기 위해 전용되는, 이미지 검색 방법.
  46. 제 41 항에 있어서,
    장치의 특정한 타입에 대해 각 레이어를 어떻게 최적화하는지를 나타내는 상기 정보는 장치 타입-특정 구성 파일에 저장되는, 이미지 검색 방법.
  47. 제 46 항에 있어서,
    상기 장치 타입-특정 구성 파일은, 각각이 특정한 장치 타입에 대해 렌더링 이미지에 관한 정보를 저장하는 XML 파일을 포함하는, 이미지 검색 방법.
  48. 제 46 항에 있어서,
    각각의 장치 타입-특정 구성 파일은 특정한 장치 타입에 대한 레이어링 및 뷰포트 정보를 포함하는, 이미지 검색 방법.
  49. 제 41 항에 있어서,
    상기 요청은 인터넷에 접속된 장치로부터 수신된 브라우저 요청을 포함하는, 이미지 검색 방법.
  50. 제 41 항에 있어서,
    상기 특정한 이미지를 요청하는 장치의 타입이 무엇인지를 식별하는 단계는 상기 장치의 타입을 식별하는 것을 돕는 정보를 얻기 위해 상기 요청을 분석하는 단계를 포함하는, 이미지 검색 방법.
KR1020057001332A 2002-07-23 2003-07-21 특정 클라이언트 장치 타입용 최적화된 동적 뷰포트레이어링을 제공하는 이미징 시스템 KR20050029311A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US39821102P 2002-07-23 2002-07-23
US60/398,211 2002-07-23
US10/273,670 US7051040B2 (en) 2002-07-23 2002-10-18 Imaging system providing dynamic viewport layering
US10/273,670 2002-10-18

Publications (1)

Publication Number Publication Date
KR20050029311A true KR20050029311A (ko) 2005-03-25

Family

ID=30772623

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057001332A KR20050029311A (ko) 2002-07-23 2003-07-21 특정 클라이언트 장치 타입용 최적화된 동적 뷰포트레이어링을 제공하는 이미징 시스템

Country Status (8)

Country Link
US (2) US7051040B2 (ko)
EP (1) EP1532548A1 (ko)
JP (1) JP4852674B2 (ko)
KR (1) KR20050029311A (ko)
CN (1) CN100461160C (ko)
AU (1) AU2003261216A1 (ko)
CA (1) CA2493200C (ko)
WO (1) WO2004010341A1 (ko)

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7051040B2 (en) * 2002-07-23 2006-05-23 Lightsurf Technologies, Inc. Imaging system providing dynamic viewport layering
CA2503134A1 (en) * 2002-10-21 2004-05-06 Applied Global Technologies, Inc. System and method for sharing, viewing, and controlling mutliple information systems
JP2004179953A (ja) * 2002-11-27 2004-06-24 Matsushita Electric Ind Co Ltd 画像サーバと画像サーバシステム、カメラ画像のネットワーク伝送及び表示方法
US7130461B2 (en) * 2002-12-18 2006-10-31 Xerox Corporation Systems and method for automatically choosing visual characteristics to highlight a target against a background
WO2004068320A2 (en) * 2003-01-27 2004-08-12 Vincent Wen-Jeng Lue Method and apparatus for adapting web contents to different display area dimensions
US7860309B1 (en) 2003-09-30 2010-12-28 Verisign, Inc. Media publishing system with methodology for parameterized rendering of image regions of interest
JP4444623B2 (ja) * 2003-10-29 2010-03-31 富士フイルム株式会社 動画像変換装置および方法、動画像配信装置、メール中継装置並びにプログラム
US20070143700A1 (en) * 2003-10-29 2007-06-21 Tetsuji Fukada Electronic document viewing system
JP4547906B2 (ja) * 2003-12-19 2010-09-22 ソニー株式会社 描画装置および描画方法、プログラム、並びに記録媒体
JP4311648B2 (ja) * 2004-02-19 2009-08-12 富士フイルム株式会社 代表色選択装置および方法、減色画像生成装置および方法並びにプログラム
US20060026181A1 (en) 2004-05-28 2006-02-02 Jeff Glickman Image processing systems and methods with tag-based communications protocol
US7542034B2 (en) 2004-09-23 2009-06-02 Conversion Works, Inc. System and method for processing video images
US20080259073A1 (en) * 2004-09-23 2008-10-23 Conversion Works, Inc. System and method for processing video images
US20060069591A1 (en) * 2004-09-29 2006-03-30 Razzano Michael R Dental image charting system and method
US7593024B2 (en) * 2005-01-15 2009-09-22 International Business Machines Corporation Screen calibration for display devices
US8583627B1 (en) * 2005-07-01 2013-11-12 Google Inc. Display-content alteration for user interface devices
US8086253B1 (en) 2005-12-15 2011-12-27 Google Inc. Graphical mobile e-mail
TWI292108B (en) * 2005-12-28 2008-01-01 Via Tech Inc Fault-tolerant methods and systems for managing webpage presentation
KR100698845B1 (ko) * 2005-12-28 2007-03-22 삼성전자주식회사 인물 외형 추출 알고리즘을 이용한 영상 편집 방법 및 그장치
US7853988B2 (en) * 2006-05-16 2010-12-14 Waterstone Environmental Hydrology & Engineering, Inc. State saver/restorer for a geospatial decision management system
GB0619887D0 (en) * 2006-10-07 2006-11-15 Ibm Data processing system and method
US20080307498A1 (en) * 2006-12-27 2008-12-11 Waterstone Environmental Hydrology & Engineering, Inc. Access control for server-based geographic information system
US8036703B2 (en) * 2006-12-29 2011-10-11 Texas Instruments Incorporated Image capture reporting based on content-associated wireless identification
US8655052B2 (en) * 2007-01-26 2014-02-18 Intellectual Discovery Co., Ltd. Methodology for 3D scene reconstruction from 2D image sequences
US20080226160A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. Systems and methods for filling light in frames during 2-d to 3-d image conversion
US20080225042A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. Systems and methods for allowing a user to dynamically manipulate stereoscopic parameters
US20080228449A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. Systems and methods for 2-d to 3-d conversion using depth access segments to define an object
US20080225045A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. Systems and methods for 2-d to 3-d image conversion using mask to model, or model to mask, conversion
US20080226194A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. Systems and methods for treating occlusions in 2-d to 3-d image conversion
US20080225040A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. System and method of treating semi-transparent features in the conversion of two-dimensional images to three-dimensional images
US20080225059A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. System and method for using off-screen mask space to provide enhanced viewing
US20080226128A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. System and method for using feature tracking techniques for the generation of masks in the conversion of two-dimensional images to three-dimensional images
US8274530B2 (en) 2007-03-12 2012-09-25 Conversion Works, Inc. Systems and methods for filling occluded information for 2-D to 3-D conversion
US20080226181A1 (en) * 2007-03-12 2008-09-18 Conversion Works, Inc. Systems and methods for depth peeling using stereoscopic variables during the rendering of 2-d to 3-d images
US20080313210A1 (en) * 2007-06-15 2008-12-18 Microsoft Corporation Content Publishing Customized to Capabilities of Device
CN101448167B (zh) * 2007-11-28 2011-12-28 新奥特(北京)视频技术有限公司 任意区域的色彩校正特技调节方法及其系统
US7746098B2 (en) * 2008-03-10 2010-06-29 Qimonda North America Corp. Termination switching based on data rate
US20100013641A1 (en) * 2008-07-17 2010-01-21 Reed Chad M System for providing remote signals from a patient monitor
US8411046B2 (en) 2008-10-23 2013-04-02 Microsoft Corporation Column organization of content
US20100107100A1 (en) 2008-10-23 2010-04-29 Schneekloth Jason S Mobile Device Style Abstraction
US8214742B2 (en) * 2008-12-23 2012-07-03 International Business Machines Corporation Method of rapidly creating visual aids for presentation without technical knowledge
US20100169059A1 (en) * 2009-02-13 2010-07-01 Grant Thomas-Lepore Layered Personalization
US8355698B2 (en) 2009-03-30 2013-01-15 Microsoft Corporation Unlock screen
US8175653B2 (en) 2009-03-30 2012-05-08 Microsoft Corporation Chromeless user interface
US20100313252A1 (en) * 2009-06-08 2010-12-09 Erie Trouw System, method and apparatus for creating and using a virtual layer within a web browsing environment
US8532435B1 (en) * 2009-08-18 2013-09-10 Adobe Systems Incorporated System and method for automatically adapting images
WO2012068793A1 (zh) * 2010-11-26 2012-05-31 深圳市同洲软件有限公司 数字电视接收终端与移动终端交互方法、终端和系统
US9824137B2 (en) 2011-11-08 2017-11-21 Blackberry Limited Block zoom on a mobile electronic device
US8582876B2 (en) * 2011-11-15 2013-11-12 Microsoft Corporation Hybrid codec for compound image compression
US9280601B1 (en) 2012-02-15 2016-03-08 Google Inc. Modifying search results
US9384711B2 (en) * 2012-02-15 2016-07-05 Microsoft Technology Licensing, Llc Speculative render ahead and caching in multiple passes
US9230517B2 (en) 2012-05-31 2016-01-05 Microsoft Technology Licensing, Llc Virtual surface gutters
US9177533B2 (en) 2012-05-31 2015-11-03 Microsoft Technology Licensing, Llc Virtual surface compaction
US9235925B2 (en) 2012-05-31 2016-01-12 Microsoft Technology Licensing, Llc Virtual surface rendering
US9286122B2 (en) 2012-05-31 2016-03-15 Microsoft Technology Licensing, Llc Display techniques using virtual surface allocation
GB2504490A (en) * 2012-07-30 2014-02-05 Ibm Shortening a name for display
US9152313B2 (en) * 2012-08-06 2015-10-06 Shutterfly, Inc. Unified picture access across devices
US9058662B2 (en) * 2012-08-16 2015-06-16 Facebook, Inc. Systems and methods for non-destructive editing of digital images
US8965880B2 (en) 2012-10-05 2015-02-24 Google Inc. Transcoding and serving resources
US20140108941A1 (en) * 2012-10-17 2014-04-17 Christopher Stephen Joel Method and Apparatus for Automatically Optimizing the Loading of Images in a Cloud-Based Proxy Service
US9098477B2 (en) 2013-05-15 2015-08-04 Cloudflare, Inc. Method and apparatus for automatically optimizing the loading of images in a cloud-based proxy service
US9307007B2 (en) 2013-06-14 2016-04-05 Microsoft Technology Licensing, Llc Content pre-render and pre-fetch techniques
CN104346156B (zh) * 2013-08-05 2018-01-26 北大方正集团有限公司 显示文本块、文本块处理的方法和装置
US9952747B1 (en) * 2013-09-24 2018-04-24 Amazon Technologies, Inc. Updating data fields in a user interface
US10586513B2 (en) 2013-09-27 2020-03-10 Koninklijke Philips N.V. Simultaneously displaying video data of multiple video sources
US9489757B2 (en) 2013-10-16 2016-11-08 Microsoft Technology Licensing, Llc Resizable text backing shapes for digital images
US20150103092A1 (en) * 2013-10-16 2015-04-16 Microsoft Corporation Continuous Image Optimization for Responsive Pages
US8924850B1 (en) 2013-11-21 2014-12-30 Google Inc. Speeding up document loading
US10225624B2 (en) 2014-01-03 2019-03-05 Interdigital Ce Patent Holdings Method and apparatus for the generation of metadata for video optimization
CN104900176B (zh) * 2014-03-07 2018-10-19 腾讯科技(北京)有限公司 多媒体数据的显示控制方法及装置
US20150262386A1 (en) * 2014-03-14 2015-09-17 LEAP Computing, Inc. Systems and methods for streaming graphics across a network
EP3107279B1 (en) * 2015-06-15 2018-08-22 Coherent Synchro, S.L. Method, device and installation for composing a video signal
US10416952B2 (en) 2017-06-27 2019-09-17 Salesforce.Com, Inc. Identifying a viewport within a browser window
US10360704B2 (en) 2017-08-11 2019-07-23 Microsoft Technology Licensing, Llc Techniques for providing dynamic multi-layer rendering in graphics processing
US10810327B2 (en) * 2018-01-05 2020-10-20 Intel Corporation Enforcing secure display view for trusted transactions
US10834201B2 (en) * 2018-11-27 2020-11-10 International Business Machines Corporation Device identification and reconfiguration in a network
US20200257767A1 (en) * 2019-02-11 2020-08-13 Oracle International Corporation Enhancing a Construction Plan with Data Objects
US10924750B2 (en) * 2019-03-01 2021-02-16 Alibaba Group Holding Limited Palette size constraint in palette mode for video compression system
EP4200792A1 (en) 2020-08-21 2023-06-28 Mobeus Industries, Inc. Integrating overlaid digital content into displayed data via graphics processing circuitry
US11481933B1 (en) 2021-04-08 2022-10-25 Mobeus Industries, Inc. Determining a change in position of displayed digital content in subsequent frames via graphics processing circuitry
US11586835B2 (en) 2021-04-30 2023-02-21 Mobeus Industries, Inc. Integrating overlaid textual digital content into displayed data via graphics processing circuitry using a frame buffer
US11477020B1 (en) 2021-04-30 2022-10-18 Mobeus Industries, Inc. Generating a secure random number by determining a change in parameters of digital content in subsequent frames via graphics processing circuitry
US11682101B2 (en) * 2021-04-30 2023-06-20 Mobeus Industries, Inc. Overlaying displayed digital content transmitted over a communication network via graphics processing circuitry using a frame buffer
US11475610B1 (en) 2021-04-30 2022-10-18 Mobeus Industries, Inc. Controlling interactivity of digital content overlaid onto displayed data via graphics processing circuitry using a frame buffer
US11601276B2 (en) 2021-04-30 2023-03-07 Mobeus Industries, Inc. Integrating and detecting visual data security token in displayed data via graphics processing circuitry using a frame buffer
US11483156B1 (en) 2021-04-30 2022-10-25 Mobeus Industries, Inc. Integrating digital content into displayed data on an application layer via processing circuitry of a server
US11562153B1 (en) 2021-07-16 2023-01-24 Mobeus Industries, Inc. Systems and methods for recognizability of objects in a multi-layer display
US11756264B2 (en) * 2021-11-23 2023-09-12 Adobe Inc. Continuous optimization of discrete parameters using a unified stress indicator

Family Cites Families (190)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3035965A1 (de) 1980-09-24 1982-05-13 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt Datenuebertragungssystem
JPH0636182B2 (ja) 1988-02-06 1994-05-11 大日本スクリーン製造株式会社 画像ファイリング・検索方法および装置
DE68923472T2 (de) 1988-04-08 1995-12-07 Fuji Photo Film Co Ltd Elektronische Standbildkamera mit der Fähigkeit ein Aufzeichnungsmittel auszuwählen.
US5065447A (en) * 1989-07-05 1991-11-12 Iterated Systems, Inc. Method and apparatus for processing digital data
US5761655A (en) 1990-06-06 1998-06-02 Alphatronix, Inc. Image file storage and retrieval system
US5756982A (en) 1990-09-11 1998-05-26 Metrologic Instruments, Inc. Body-wearable automatic laser scanner with power-conserving control subsystem
US5172227A (en) 1990-12-10 1992-12-15 Eastman Kodak Company Image compression with color interpolation for a single sensor image system
US5548789A (en) 1991-01-24 1996-08-20 Canon Kabushiki Kaisha Message communication processing apparatus for selectively converting storing and transmitting messages of different lengths
US5249053A (en) 1991-02-05 1993-09-28 Dycam Inc. Filmless digital camera with selective image compression
US5469542A (en) 1991-07-22 1995-11-21 International Business Machines Corporation Serial diagnostic interface bus for multiprocessor systems
US5309257A (en) 1991-12-31 1994-05-03 Eastman Kodak Company Method and apparatus for providing color matching between color output devices
US5552824A (en) 1993-02-18 1996-09-03 Lynx System Developers, Inc. Line object scene generation apparatus
US5657077A (en) 1993-02-18 1997-08-12 Deangelis; Douglas J. Event recording system with digital line camera
JPH06303607A (ja) 1993-04-15 1994-10-28 Canon Inc テレビ会議システムおよびその制御方法
US5956044A (en) 1993-05-07 1999-09-21 Eastman Kodak Company Imaging device to media compatibility and color appearance matching with flare, luminance, and white point comparison
CN1113302C (zh) 1993-07-30 2003-07-02 佳能株式会社 通过通信线路控制设备的控制器和方法
JP3320859B2 (ja) 1993-09-24 2002-09-03 旭光学工業株式会社 Ccdディジタルカメラ
US5412427A (en) 1993-10-29 1995-05-02 Eastman Kodak Company Electronic camera utilizing image compression feedback for improved color processing
US7113615B2 (en) * 1993-11-18 2006-09-26 Digimarc Corporation Watermark embedder and reader
US8505108B2 (en) * 1993-11-18 2013-08-06 Digimarc Corporation Authentication using a digital watermark
DE4415167A1 (de) 1994-04-29 1995-11-02 Siemens Ag Telekommunikationsanordnung zum Übertragen von Bildern
FI115739B (fi) 1994-05-19 2005-06-30 Nokia Corp Laite henkilökohtaiseen viestintään, tietojenkeruuseen ja -käsittelyyn ja piirikortti
JPH0877356A (ja) * 1994-09-09 1996-03-22 Fujitsu Ltd 三次元多眼画像の処理方法及び処理装置
JP3525353B2 (ja) 1994-09-28 2004-05-10 株式会社リコー デジタル電子スチル・カメラ
JP3893480B2 (ja) 1994-09-28 2007-03-14 株式会社リコー デジタル電子カメラ
US5613017A (en) 1994-09-29 1997-03-18 Kabushiki Kaisha Toshiba Apparatus for processing image data among media having different image output sizes
US6181837B1 (en) 1994-11-18 2001-01-30 The Chase Manhattan Bank, N.A. Electronic check image storage and retrieval system
US6275869B1 (en) 1994-11-22 2001-08-14 Eastman Kodak Company System for network communication of image information between imaging devices according to multiple protocols
GB2295936B (en) 1994-12-05 1997-02-05 Microsoft Corp Progressive image transmission using discrete wavelet transforms
JPH08161250A (ja) 1994-12-06 1996-06-21 Canon Inc 情報処理装置
JP3534465B2 (ja) 1994-12-28 2004-06-07 パイオニア株式会社 サブバンド符号化方法
US6072902A (en) 1995-05-03 2000-06-06 Apple Computer, Inc. Method and system for color matching between digital display devices
US6016520A (en) 1995-07-14 2000-01-18 Microsoft Corporation Method of viewing at a client viewing station a multiple media title stored at a server and containing a plurality of topics utilizing anticipatory caching
US6067383A (en) 1995-09-12 2000-05-23 Matsushita Electric Industrial Co., Ltd. Coding method, coding apparatus, wavelet transform apparatus, and wavelet reverse transform apparatus
WO1997012328A1 (en) 1995-09-25 1997-04-03 Adobe Systems Incorporated Optimum access to electronic documents
US6507864B1 (en) 1996-08-02 2003-01-14 Symbol Technologies, Inc. Client-server software for controlling data collection device from host computer
US5781901A (en) 1995-12-21 1998-07-14 Intel Corporation Transmitting electronic mail attachment over a network using a e-mail page
US5903723A (en) 1995-12-21 1999-05-11 Intel Corporation Method and apparatus for transmitting electronic mail attachments with attachment references
US5915112A (en) 1996-01-02 1999-06-22 International Business Machines Corporation Remote procedure interface with support for multiple versions
US5841432A (en) 1996-02-09 1998-11-24 Carmel; Sharon Method and system of building and transmitting a data file for real time play of multimedia, particularly animation, and a data file for real time play of multimedia applications
US6628325B1 (en) 1998-06-26 2003-09-30 Fotonation Holdings, Llc Camera network communication device
US5652621A (en) 1996-02-23 1997-07-29 Eastman Kodak Company Adaptive color plane interpolation in single sensor color electronic camera
US6072598A (en) 1996-02-27 2000-06-06 Intel Corporation Method for enhancing usability of fax on small device
US5682152A (en) 1996-03-19 1997-10-28 Johnson-Grace Company Data compression using adaptive bit allocation and hybrid lossless entropy encoding
US5835580A (en) 1996-04-04 1998-11-10 At&T Corp Method and apparatus for automated provisioning and billing of communication services
US5675382A (en) 1996-04-08 1997-10-07 Connectix Corporation Spatial compression and decompression for video
US5734831A (en) 1996-04-26 1998-03-31 Sun Microsystems, Inc. System for configuring and remotely administering a unix computer over a network
US5826023A (en) 1996-06-03 1998-10-20 International Business Machines Corporation Communications tunneling
US5918013A (en) 1996-06-03 1999-06-29 Webtv Networks, Inc. Method of transcoding documents in a network environment using a proxy server
US5818525A (en) 1996-06-17 1998-10-06 Loral Fairchild Corp. RGB image correction using compressed flat illuminated files and a simple one or two point correction algorithm
US6031964A (en) 1996-06-20 2000-02-29 Apple Computer, Inc. System and method for using a unified memory architecture to implement a digital camera device
AU3496797A (en) 1996-06-21 1998-01-07 Integrated Computing Engines, Inc. Network based programmable media manipulator
US5737491A (en) 1996-06-28 1998-04-07 Eastman Kodak Company Electronic imaging system capable of image capture, local wireless transmission and voice recognition
US5883640A (en) 1996-08-15 1999-03-16 Hsieh; Paul Computing apparatus and operating method using string caching to improve graphics performance
US5790878A (en) 1996-08-23 1998-08-04 Apple Computer, Inc. System and method for recovering from a power failure within a digital camera device
US5913088A (en) 1996-09-06 1999-06-15 Eastman Kodak Company Photographic system capable of creating and utilizing applets on photographic film
TW347498B (en) 1996-09-30 1998-12-11 Casio Computer Co Ltd Information supply system
FI104222B (fi) 1996-10-03 1999-11-30 Nokia Mobile Phones Ltd Modulaarinen matkaviestinjärjestelmä
US6202060B1 (en) 1996-10-29 2001-03-13 Bao Q. Tran Data management system
US5896502A (en) 1996-12-10 1999-04-20 International Business Machines Corporation Internet data transfer control via a client system to reduce delay
US6185625B1 (en) 1996-12-20 2001-02-06 Intel Corporation Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object
AUPO472897A0 (en) 1997-01-22 1997-02-20 Canon Information Systems Research Australia Pty Ltd A method for digital image compression
US6157746A (en) 1997-02-12 2000-12-05 Sarnoff Corporation Apparatus and method for encoding wavelet trees generated by a wavelet-based coding method
US5917542A (en) 1997-02-18 1999-06-29 Eastman Kodak Company System and method for digital image capture and transmission
US5928325A (en) 1997-02-24 1999-07-27 Motorola, Inc. Method of dynamically establishing communication of incoming messages to one or more user devices presently available to an intended recipient
US6311215B1 (en) 1997-03-25 2001-10-30 Intel Corporation System for dynamic determination of client communications capabilities
US6421733B1 (en) * 1997-03-25 2002-07-16 Intel Corporation System for dynamically transcoding data transmitted between computers
US5848193A (en) 1997-04-07 1998-12-08 The United States Of America As Represented By The Secretary Of The Navy Wavelet projection transform features applied to real time pattern recognition
JPH114367A (ja) 1997-04-16 1999-01-06 Seiko Epson Corp 高速画像選択方法および高速画像選択機能付デジタルカメラ
JP4086360B2 (ja) 1997-04-24 2008-05-14 キヤノン株式会社 印刷制御システム
US6023714A (en) 1997-04-24 2000-02-08 Microsoft Corporation Method and system for dynamically adapting the layout of a document to an output device
US6023585A (en) 1997-05-02 2000-02-08 Webtv Networks, Inc. Automatically selecting and downloading device drivers from a server system to a client system that includes one or more devices
US6417882B1 (en) 1997-05-06 2002-07-09 Texas Instruments Incorporated CMOS sensor camera with on-chip image compression
US6914622B1 (en) 1997-05-07 2005-07-05 Telbotics Inc. Teleconferencing robot with swiveling video monitor
US6459816B2 (en) 1997-05-08 2002-10-01 Ricoh Company, Ltd. Image processing system for compressing image data including binary image data and continuous tone image data by a sub-band transform method with a high-compression rate
US6043837A (en) 1997-05-08 2000-03-28 Be Here Corporation Method and apparatus for electronically distributing images from a panoptic camera system
EP0881542A1 (en) 1997-05-26 1998-12-02 Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno Lithography system
JPH1115761A (ja) 1997-06-02 1999-01-22 Internatl Business Mach Corp <Ibm> 赤外線通信機能を持つ情報処理装置及びその制御方法
US6020920A (en) 1997-06-10 2000-02-01 Flashpoint Technology, Inc. Method and system for speculative decompression of compressed image data in an image capture unit
US6094454A (en) 1997-06-19 2000-07-25 International Business Machines Corporation Multi-spectral image compression and transformation
US6125201A (en) 1997-06-25 2000-09-26 Andrew Michael Zador Method, apparatus and system for compressing data
JP3448462B2 (ja) 1997-06-25 2003-09-22 三洋電機株式会社 画像データ圧縮装置
KR100261607B1 (ko) 1997-06-30 2000-07-15 이중구 원격 통신이 가능한 디지탈 스틸 카메라
US6009201A (en) 1997-06-30 1999-12-28 Intel Corporation Efficient table-lookup based visually-lossless image compression scheme
JPH1132295A (ja) 1997-07-09 1999-02-02 Olympus Optical Co Ltd デジタルカラープリンタ、デジタルカメラ及びそれらを用いたデジタルカラープリントシステム
AUPO797897A0 (en) * 1997-07-15 1997-08-07 Silverbrook Research Pty Ltd Media device (ART18)
US6421069B1 (en) 1997-07-31 2002-07-16 Sony Corporation Method and apparatus for including self-describing information within devices
US6101320A (en) 1997-08-01 2000-08-08 Aurora Communications Exchange Ltd. Electronic mail communication system and method
JPH11136394A (ja) * 1997-08-26 1999-05-21 Casio Comput Co Ltd データ出力システムおよびデータ出力方法
AU8073298A (en) 1997-09-11 1999-03-29 Intel Corporation A method for directly compressing a color image and tailoring the compression based on the color filter array, optics, and sensor characteristics
US6886013B1 (en) * 1997-09-11 2005-04-26 International Business Machines Corporation HTTP caching proxy to filter and control display of data in a web browser
US6226642B1 (en) 1997-09-11 2001-05-01 International Business Machines Corporation Content modification of internet web pages for a television class display
US6091777A (en) 1997-09-18 2000-07-18 Cubic Video Technologies, Inc. Continuously adaptive digital video compression system and method for a web streamer
US6031934A (en) 1997-10-15 2000-02-29 Electric Planet, Inc. Computer vision system for subject characterization
JPH11127340A (ja) 1997-10-24 1999-05-11 Fuji Xerox Co Ltd 画像処理装置および画像処理方法
US6085249A (en) 1997-10-24 2000-07-04 Pictra, Inc. Method and apparatuses for transferring data for multiple applications through a single communication link in response to authentication information
JP3884840B2 (ja) 1997-10-27 2007-02-21 キヤノン株式会社 画像読取方法及び装置
US5870383A (en) 1997-10-27 1999-02-09 At&T Corp Provisioning technique for customer service
US6167441A (en) 1997-11-21 2000-12-26 International Business Machines Corporation Customization of web pages based on requester type
US7057648B2 (en) 1997-11-24 2006-06-06 Eastman Kodak Company Capturing digital images to be transferred to a service provider for storage
US6128413A (en) 1997-12-04 2000-10-03 Agfa Corporation Method and apparatus for data compression
US6081883A (en) 1997-12-05 2000-06-27 Auspex Systems, Incorporated Processing system with dynamically allocatable buffer memory
JP3750771B2 (ja) 1997-12-25 2006-03-01 富士写真フイルム株式会社 画像記録方法および装置
US6014763A (en) * 1998-01-15 2000-01-11 International Business Machines Corporation At-speed scan testing
US6348929B1 (en) 1998-01-16 2002-02-19 Intel Corporation Scaling algorithm and architecture for integer scaling in video
US6278491B1 (en) * 1998-01-29 2001-08-21 Hewlett-Packard Company Apparatus and a method for automatically detecting and reducing red-eye in a digital image
EP1070290B1 (en) * 1998-02-12 2015-01-07 E-Plus Capital Inc. Network image view server using efficient client-server, tiling and caching architecture
US6094689A (en) 1998-02-13 2000-07-25 Hewlett-Packard Company System for coupling a host computer to an image scanner in which high level functions are migrated to the attached host computer
US6392699B1 (en) 1998-03-04 2002-05-21 Intel Corporation Integrated color interpolation and color space conversion algorithm from 8-bit bayer pattern RGB color space to 12-bit YCrCb color space
US6141686A (en) 1998-03-13 2000-10-31 Deterministic Networks, Inc. Client-side application-classifier gathering network-traffic statistics and application and user names using extensible-service provider plugin for policy-based network control
AUPP248498A0 (en) 1998-03-20 1998-04-23 Canon Kabushiki Kaisha A method and apparatus for encoding and decoding an image
US6163604A (en) 1998-04-03 2000-12-19 Lucent Technologies Automated fraud management in transaction-based networks
EP0949805A3 (en) 1998-04-10 2001-01-10 Fuji Photo Film Co., Ltd. Electronic album producing and viewing system and method
US6092114A (en) 1998-04-17 2000-07-18 Siemens Information And Communication Networks, Inc. Method and system for determining the location for performing file-format conversions of electronics message attachments
JP3942267B2 (ja) 1998-04-21 2007-07-11 東芝テック株式会社 電子メールシステム
US6385772B1 (en) 1998-04-30 2002-05-07 Texas Instruments Incorporated Monitoring system having wireless remote viewing and control
US6389460B1 (en) 1998-05-13 2002-05-14 Compaq Computer Corporation Method and apparatus for efficient storage and retrieval of objects in and from an object storage device
US6154493A (en) 1998-05-21 2000-11-28 Intel Corporation Compression of color images based on a 2-dimensional discrete wavelet transform yielding a perceptually lossless image
US6556875B1 (en) 1998-06-30 2003-04-29 Seiko Epson Corporation Device control system
JP3740322B2 (ja) 1998-07-02 2006-02-01 キヤノン株式会社 変換装置およびその方法
US6300947B1 (en) 1998-07-06 2001-10-09 International Business Machines Corporation Display screen and window size related web page adaptation system
US6028807A (en) 1998-07-07 2000-02-22 Intel Corporation Memory architecture
US6256666B1 (en) 1998-07-14 2001-07-03 International Business Machines Corp. Method and system for remotely managing electronic mail attachments
US6330073B1 (en) 1998-07-20 2001-12-11 Nw Coughlin System and method for merging multi-platform documents
US6925595B1 (en) * 1998-08-05 2005-08-02 Spyglass, Inc. Method and system for content conversion of hypertext data using data mining
US6198941B1 (en) 1998-08-07 2001-03-06 Lucent Technologies Inc. Method of operating a portable communication device
KR100307906B1 (ko) 1998-08-29 2001-11-30 김덕우 복수의가입자번호를사용하는무선호출시스템및무선호출기
US6278449B1 (en) 1998-09-03 2001-08-21 Sony Corporation Apparatus and method for designating information to be retrieved over a computer network
US6493758B1 (en) 1998-09-08 2002-12-10 Microsoft Corporation Offline viewing of internet content with a mobile device
US6064437A (en) 1998-09-11 2000-05-16 Sharewave, Inc. Method and apparatus for scaling and filtering of video information for use in a digital system
US6195026B1 (en) 1998-09-14 2001-02-27 Intel Corporation MMX optimized data packing methodology for zero run length and variable length entropy encoding
US6285775B1 (en) 1998-10-01 2001-09-04 The Trustees Of The University Of Princeton Watermarking scheme for image authentication
US6195696B1 (en) 1998-10-01 2001-02-27 International Business Machines Corporation Systems, methods and computer program products for assigning, generating and delivering content to intranet users
US6563517B1 (en) 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing
US6414679B1 (en) * 1998-10-08 2002-07-02 Cyberworld International Corporation Architecture and methods for generating and displaying three dimensional representations
US6583813B1 (en) 1998-10-09 2003-06-24 Diebold, Incorporated System and method for capturing and searching image data associated with transactions
US6289375B1 (en) 1998-10-30 2001-09-11 International Business Machines Corporation Method and apparatus for invoking network agent functions using a hash table
US6463177B1 (en) 1998-11-04 2002-10-08 Sharp Laboratories Of America, Inc. Dynamic management of embedded coded images in a digital storage device
US6393470B1 (en) 1998-11-13 2002-05-21 International Business Machines Corp. Non intrusive automatic remote support for freeing overloaded storage in portable devices
US6509910B1 (en) 1998-11-18 2003-01-21 Eastman Kodak Company Method and system for interfacing with a digital media frame network
US6512919B2 (en) 1998-12-14 2003-01-28 Fujitsu Limited Electronic shopping system utilizing a program downloadable wireless videophone
JP2000196986A (ja) 1998-12-25 2000-07-14 Olympus Optical Co Ltd 電子的撮像装置
US6487717B1 (en) 1999-01-15 2002-11-26 Cummins, Inc. System and method for transmission of application software to an embedded vehicle computer
US6411685B1 (en) 1999-01-29 2002-06-25 Microsoft Corporation System and method for providing unified messaging to a user with a thin web browser
US6785730B1 (en) 1999-02-16 2004-08-31 Rebecca S. Taylor Generic communications protocol translator
US6615224B1 (en) 1999-02-23 2003-09-02 Lewis B. Davis High-performance UNIX file undelete
US6480853B1 (en) 1999-03-08 2002-11-12 Ericsson Inc. Systems, methods and computer program products for performing internet searches utilizing bookmarks
US6546143B1 (en) 1999-03-12 2003-04-08 Hewlett-Packard Development Company Efficient wavelet-based compression of large images
US6438576B1 (en) 1999-03-29 2002-08-20 International Business Machines Corporation Method and apparatus of a collaborative proxy system for distributed deployment of object rendering
US6519617B1 (en) 1999-04-08 2003-02-11 International Business Machines Corporation Automated creation of an XML dialect and dynamic generation of a corresponding DTD
US6351547B1 (en) 1999-04-28 2002-02-26 General Electric Company Method and apparatus for formatting digital images to conform to communications standard
US6505236B1 (en) 1999-04-30 2003-01-07 Thinmail, Inc. Network-based mail attachment storage system and method
US6724721B1 (en) 1999-05-07 2004-04-20 Cisco Technology, Inc. Approximated per-flow rate limiting
GB9911941D0 (en) 1999-05-21 1999-07-21 Eidos Technologies Limited Electronic mail system
US6850946B1 (en) * 1999-05-26 2005-02-01 Wireless Valley Communications, Inc. Method and system for a building database manipulator
US6473794B1 (en) 1999-05-27 2002-10-29 Accenture Llp System for establishing plan to test components of web based framework by displaying pictorial representation and conveying indicia coded components of existing network framework
US7372485B1 (en) 1999-06-08 2008-05-13 Lightsurf Technologies, Inc. Digital camera device and methodology for distributed processing and wireless transmission of digital images
US6910068B2 (en) 1999-06-11 2005-06-21 Microsoft Corporation XML-based template language for devices and services
SE9902462L (sv) 1999-06-28 2000-11-06 Ericsson Telefon Ab L M Metod och anordning i ett telekommunikationssystem
DE19934787B4 (de) 1999-07-27 2004-08-05 T-Mobile Deutschland Gmbh Verfahren zur automatischen Anpassung der von einer datenbereitstellenden Einrichtung zu einer datenabrufenden Einrichtung zu übertragenden Daten an die Fähigkeiten dieses Endgerätes
US6553412B1 (en) 1999-09-10 2003-04-22 Avantgo, Inc. System, method, and computer program product for web content aggregation and development, and web content delivery to clients
US6360252B1 (en) 1999-09-20 2002-03-19 Fusionone, Inc. Managing the transfer of e-mail attachments to rendering devices other than an original e-mail recipient
US6684257B1 (en) 1999-10-15 2004-01-27 International Business Machines Corporation Systems, methods and computer program products for validating web content tailored for display within pervasive computing devices
US7103357B2 (en) 1999-11-05 2006-09-05 Lightsurf Technologies, Inc. Media spooler system and methodology providing efficient transmission of media content from wireless devices
US6449658B1 (en) 1999-11-18 2002-09-10 Quikcat.Com, Inc. Method and apparatus for accelerating data through communication networks
US6477529B1 (en) 1999-12-06 2002-11-05 Research In Motion Limited Apparatus and method for dynamically limiting information sent to a viewing device
JP2001166909A (ja) 1999-12-14 2001-06-22 Nec Corp データ転送表示方法
US6400903B1 (en) 1999-12-23 2002-06-04 Paul Conoval Remote camera relay controller method and apparatus
JP3893442B2 (ja) 2000-01-14 2007-03-14 富士フイルム株式会社 プリント注文方法および装置ならびに印刷装置
US6742043B1 (en) 2000-01-14 2004-05-25 Webtv Networks, Inc. Reformatting with modular proxy server
JP2003521784A (ja) 2000-02-04 2003-07-15 アメリカ オンライン インコーポレーティッド スケーラブルなウェブページを配信およびレンダリングするためのシステムとプロセス
GB2365177A (en) 2000-02-07 2002-02-13 Hewlett Packard Co System and method for exchange of digital data from personal appliances
US7054905B1 (en) 2000-03-30 2006-05-30 Sun Microsystems, Inc. Replacing an email attachment with an address specifying where the attachment is stored
US6704712B1 (en) 2000-04-14 2004-03-09 Shutterfly, Inc. Remote film scanning and image transfer system, protocol and method
US6598076B1 (en) 2000-05-02 2003-07-22 Openshark, Inc. Method and apparatus for electronically communicating an electronic message having an electronic attachment
US6760762B2 (en) 2000-07-17 2004-07-06 Tele Services Solutions, Inc Intelligent network providing network access services (INP-NAS)
US6745235B2 (en) 2000-07-17 2004-06-01 Teleservices Solutions, Inc. Intelligent network providing network access services (INP-NAS)
KR20000063801A (ko) 2000-08-04 2000-11-06 김대원 무선 단말기를 이용한 이메일 접속 및 서비스 장치 및 방법
US7427995B2 (en) 2000-08-18 2008-09-23 Amcor Limited System for creating an artwork
GB0023570D0 (en) 2000-09-26 2000-11-08 Volantis Systems Ltd Web server
EP1202188A3 (en) 2000-10-31 2003-09-10 Mishou Co., Ltd. Server devices for displaying web pages
JP2002202935A (ja) 2000-10-31 2002-07-19 Mishou Kk サーバ装置
US6423892B1 (en) 2001-01-29 2002-07-23 Koninklijke Philips Electronics N.V. Method, wireless MP3 player and system for downloading MP3 files from the internet
US7185063B1 (en) * 2001-06-22 2007-02-27 Digital River, Inc. Content delivery network using differential caching
US20030110234A1 (en) * 2001-11-08 2003-06-12 Lightsurf Technologies, Inc. System and methodology for delivering media to multiple disparate client devices based on their capabilities
AUPR947701A0 (en) 2001-12-14 2002-01-24 Activesky, Inc. Digital multimedia publishing system for wireless devices
US6769771B2 (en) * 2002-03-14 2004-08-03 Entertainment Design Workshop, Llc Method and apparatus for producing dynamic imagery in a visual medium
US7003136B1 (en) * 2002-04-26 2006-02-21 Hewlett-Packard Development Company, L.P. Plan-view projections of depth image data for object tracking
US7051040B2 (en) * 2002-07-23 2006-05-23 Lightsurf Technologies, Inc. Imaging system providing dynamic viewport layering
US7149370B2 (en) 2003-03-07 2006-12-12 Nokia Corporation Method and device for image surfing

Also Published As

Publication number Publication date
US7792876B2 (en) 2010-09-07
JP2005534108A (ja) 2005-11-10
US7051040B2 (en) 2006-05-23
JP4852674B2 (ja) 2012-01-11
WO2004010341A1 (en) 2004-01-29
US20070009179A1 (en) 2007-01-11
CA2493200A1 (en) 2004-01-29
AU2003261216A1 (en) 2004-02-09
CN1679024A (zh) 2005-10-05
CN100461160C (zh) 2009-02-11
EP1532548A1 (en) 2005-05-25
US20040017393A1 (en) 2004-01-29
CA2493200C (en) 2010-10-19

Similar Documents

Publication Publication Date Title
US7051040B2 (en) Imaging system providing dynamic viewport layering
US6281874B1 (en) Method and system for downloading graphic images on the internet
US6886034B2 (en) Method and system for viewing scalable documents
JP4681786B2 (ja) ビデオ編集ワークフロー方法及びその装置
US7012621B2 (en) Method and apparatus for rendering a low-resolution thumbnail image suitable for a low resolution display having a reference back to an original digital negative and an edit list of operations
US6577311B1 (en) Techniques for automatically providing a high-resolution rendering of a low resolution digital image in a distributed network
US6874131B2 (en) Method and system for client-less viewing of scalable documents
US6167442A (en) Method and system for accessing and of rendering an image for transmission over a network
US7062107B1 (en) Techniques for generating a distributed low-resolution digital image capable of viewing in any resolution
US6850248B1 (en) Method and apparatus that allows a low-resolution digital greeting card image or digital calendar image to contain a link to an associated original digital negative and edit list
JP2009054175A (ja) プリンタ出力用コンテンツのリモートレンダリングシステム
JP2003241738A (ja) デジタル画像における関心の対象の表示を最適化するための方法およびシステム
JP2003219149A (ja) デジタル静止画像における関心の対象を選択および記録するための方法
CN107220000A (zh) 图片压缩方法和图片压缩装置
US20020029242A1 (en) Image editing method and system
JP2012038326A (ja) 分散型システムにおいて複数の関連付けられたマルチメディア資産の何れかを同期させる技法
US20040207657A1 (en) Serving an image in multiple formats from a photohosting website
US20030231240A1 (en) On demand techniques for using data associated with a digital image suitable for rasterization at any resolution
JP4669183B2 (ja) 任意の解像度でのラスタ化に適切なデジタル画像と関連付けられるデータを使用するためのオンデマンド技法
JP2002542680A (ja) 複数の多重修正した子マルチメディア資産からのマルチメディア資産の取得
US20040202378A1 (en) Method and apparatus for enhancing images based on stored preferences
KR100374939B1 (ko) 인터넷상의 웹 페이지 실시간 이미지 크기 변환 방법
CA2211368A1 (en) Method and system accessing and rendering an image for transmission overa network

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application