KR100967826B1 - 화상처리장치 및 방법, 프로그램 및 프로그램 기록매체,및 데이터구조 및 데이터 기록매체 - Google Patents

화상처리장치 및 방법, 프로그램 및 프로그램 기록매체,및 데이터구조 및 데이터 기록매체 Download PDF

Info

Publication number
KR100967826B1
KR100967826B1 KR1020047001647A KR20047001647A KR100967826B1 KR 100967826 B1 KR100967826 B1 KR 100967826B1 KR 1020047001647 A KR1020047001647 A KR 1020047001647A KR 20047001647 A KR20047001647 A KR 20047001647A KR 100967826 B1 KR100967826 B1 KR 100967826B1
Authority
KR
South Korea
Prior art keywords
image data
pixel
point
pixel value
predetermined
Prior art date
Application number
KR1020047001647A
Other languages
English (en)
Other versions
KR20050002796A (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 KR20050002796A publication Critical patent/KR20050002796A/ko
Application granted granted Critical
Publication of KR100967826B1 publication Critical patent/KR100967826B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/12Panospheric to cylindrical image transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Geometry (AREA)
  • Image Processing (AREA)
  • Studio Circuits (AREA)

Abstract

화상을, 용이하게, 사용자의 시점에 따라 변화시킨다. 곡면 Ω 상의 임의의 점을 시점으로 하여, 피사체를 촬상한 원화상데이터가 기억되어 있다. 시점 P와 피사체 상의 어떤 점 Ri를 연결하는 직선 Li에 주목하고, 그 직선 Li와 곡면 Ω과의 교점을 Qi로 나타내면, 시점 P에서 피사체를 본 경우, 그 피사체 상의 점 Ri로부터 시점 P로 향하는 광선에 대응하는 화소값은, 피사체 상의 점 Ri로부터 곡면 Ω 상의 점 Qi로 향하는 광선에 대응하는 화소값에 일치하고, 이 점 Ri로부터 점 Qi로 향하는 광선에 대응하는 화소값은, 원화상데이터에 존재한다. 즉, 시점 P로부터, 피사체 상의 점 Ri를 봤을 때의 화소값은, 곡면 Ω 상의 점 Qi를 시점으로서 촬상된 원화상데이터로부터 얻을 수 있다. 본 발명은, 예를 들면, 사용자의 시점에 대응한 화상을 얻는 원화상 처리장치에 적용할 수 있다.
화상처리, 화상, 데이터, 화소, 기록매체, 프로그램, 실사, 광선

Description

화상처리장치 및 방법, 프로그램 및 프로그램 기록매체, 및 데이터구조 및 데이터 기록매체{IMAGE PROCESSING DEVICE AND METHOD, PROGRAM, PROGRAM RECORDING MEDIUM, DATA STRUCTURE, AND DATA RECORDING MEDIUM}
본 발명은, 화상처리장치 및 방법, 프로그램 및 프로그램 기록매체, 및 데이터구조 및 데이터 기록매체에 관한 것으로, 예를 들면, 사용자의 시점에 대응한 화상을 표시할 수 있도록 하는 화상처리장치 및 방법, 프로그램 및 프로그램 기록매체, 및 데이터구조 및 데이터 기록매체에 관한 것이다.
종래의, 예를 들면, CRT(Cathode Ray Tube)나 액정패널, 프로젝터 등을 이용한 디스플레이에 있어서는, 예를 들면, 비디오 카메라(이하, 적절히, 간단히, 카메라라고도 함)로 촬상된 화상이 표시되지만, 그 화상은, 도 1에 나타내는 바와 같이, 카메라의 위치를 시점으로 하여 본 것에 지나지 않았다.
따라서, 사용자가, 예를 들면, 머리 부분을 이동하여, 디스플레이에 표시된 화상을 볼 때의 시점을 변경해도, 디스플레이에 표시되는 화상은, 카메라의 렌즈중심(이하, 적절히, 카메라의 시점이라고도 함)에서 본 화상 그대로이고, 사용자의 시점의 변화에 따라, 디스플레이에 표시되는 화상이 변화하지는 않았다.
그래서, 디스플레이에 표시되는 화상이, 사용자의 시점에 따라 변화되는 화상의 표시방법으로서, 예를 들면, zebra imaging이라 부르는 방법이 있다.
그렇지만, zebra imaging은, 홀로그래피를 이용한 방법이다. zebra imaging에서 표시되는 화상은 홀로그램이기 때문에, 그 작성에 다대한 연산량과 시간을 요한다.
또한, 디스플레이에 표시되는 화상이, 사용자의 시점에 따라 변화되는 화상의 다른 표시방법으로서는, 예를 들면, 일리노이 대학의 CAVE 방식 등으로 대표되는, IPT(Immersive Projection Technology)(투입형 투사기술) 또는 IPD(Immersive Projection Display)(투입형 투사디스플레이)를 사용한 VR(Virtual Reality) 시스템이 있다.
그렇지만, 이와 같은 VR 시스템에서는, 대상으로 하는 화상이 CG(Computer Graphics)로, 비디오 카메라로 촬상된, 소위 실사의 화상을 대상으로 하는 것은 곤란하다.
(발명의 개시)
본 발명은, 이와 같은 상황에 감안하여 이루어진 것으로, 실사의 화상으로서도, 용이하게, 사용자의 시점에 따라 변화시킬 수 있도록 하는 것이다.
본 발명의 제1 화상처리장치는, 제1 화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 제1 화상데이터를, 사 용자의 시점에서 보이는 제2 화상데이터로 변환하는 변환수단을 구비하는 것을 특징으로 한다.
본 발명의 제1 화상처리방법은, 제1 화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 제1 화상데이터를, 사용자의 시점에서 보이는 제2 화상데이터로 변환하는 변환스텝을 구비하는 것을 특징으로 한다.
본 발명의 제1 프로그램은, 제1 화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 제1 화상데이터를, 사용자의 시점에서 보이는 제2 화상데이터로 변환하는 변환스텝을 구비하는 것을 특징으로 한다.
본 발명의 제1 프로그램 기록매체는, 제1 화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 제1 화상데이터를, 사용자의 시점에서 보이는 제2 화상데이터로 변환하는 변환스텝을 구비한 것을 특징으로 한다.
본 발명의 제2 화상처리장치는, 화상데이터를, 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 소정의 화소의 화소값으로 한 화상데이터인 중간데이터로 변환하는 변환수단을 구비하는 것을 특징으로 한다.
본 발명의 제2 화상처리방법은, 화상데이터를, 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 소정 의 화소의 화소값으로 한 화상데이터인 중간데이터로 변환하는 변환스텝을 구비하는 것을 특징으로 한다.
본 발명의 제2 프로그램은, 화상데이터를, 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 소정의 화소의 화소값으로 한 화상데이터인 중간데이터로 변환하는 변환스텝을 구비하는 것을 특징으로 한다.
본 발명의 제2 프로그램 기록매체는, 화상데이터를, 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 소정의 화소의 화소값으로 한 화상데이터인 중간데이터로 변환하는 변환스텝을 구비하는 프로그램이 기록되어 있는 것을 특징으로 한다.
본 발명의 데이터구조는, 원화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점을, 화소로 하고, 그 화소의 화소값이, 소정의 화소의 화소값으로 이루어져 있는 것을 특징으로 한다.
본 발명의 데이터 기록매체는, 원화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점을, 화소로 하고, 그 화소의 화소값이, 소정의 화소의 화소값으로 이루어져 있는 화상데이터가 기록되어 있는 것을 특징으로 한다.
본 발명의 제3 화상처리장치는, 오브젝트로부터의 광선에 대응하는 화소값을 갖는 소정의 포맷의 중간데이터를 출력하는 중간데이터 출력수단과, 오브젝트에 대한 시점의 위치정보가 출력되는 시점출력수단과, 중간데이터를 사용하여, 시점으로 부터의 오브젝트의 화상을 작성하는 중간데이터 변환수단을 구비하는 것을 특징으로 한다.
본 발명의 제3 화상처리방법은, 오브젝트로부터의 광선에 대응하는 화소값을 갖는 소정의 포맷의 중간데이터를 출력하는 중간데이터 출력스텝과, 오브젝트에 대한 시점의 위치정보가 출력되는 시점출력스텝과, 중간데이터를 사용하여, 시점으로부터의 오브젝트의 화상을 작성하는 중간데이터 변환스텝을 구비하는 것을 특징으로 한다.
본 발명의 제3 프로그램은, 오브젝트로부터의 광선에 대응하는 화소값을 갖는 소정의 포맷의 중간데이터를 출력하는 중간데이터 출력스텝과, 오브젝트에 대한 시점의 위치정보가 출력되는 시점출력스텝과, 중간데이터를 사용하여, 시점으로부터의 오브젝트의 화상을 작성하는 중간데이터 변환스텝을 구비하는 것을 특징으로 한다.
본 발명의 제3 프로그램 기록매체는, 오브젝트로부터의 광선에 대응하는 화소값을 갖는 소정의 포맷의 중간데이터를 출력하는 중간데이터 출력스텝과, 오브젝트에 대한 시점의 위치정보가 출력되는 시점출력스텝과, 중간데이터를 사용하여, 시점으로부터의 오브젝트의 화상을 작성하는 중간데이터 변환스텝을 구비하는 프로그램이 기록되어 있는 것을 특징으로 한다.
본 발명의 제1 화상처리장치 및 화상처리방법, 및 프로그램 및 프로그램 기록매체에 있어서는, 제1 화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 제1 화상데이터가, 사용자의 시점에서 보 이는 제2 화상데이터로 변환된다.
본 발명의 제2 화상처리장치 및 화상처리방법, 및 프로그램 및 프로그램 기록매체에 있어서는, 화상데이터가, 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 소정의 화소의 화소값으로 한 화상데이터인 중간데이터로 변환된다.
본 발명의 데이터구조 및 데이터 기록매체에 있어서는, 원화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점이, 화소로 되고, 그 화소의 화소값이, 소정의 화소의 화소값으로 이루어져 있다.
본 발명의 제3 화상처리장치 및 화상처리방법, 및 프로그램 및 프로그램 기록매체에 있어서는, 오브젝트로부터의 광선에 대응하는 화소값을 갖는 소정의 포맷의 중간데이터가 출력됨과 동시에, 오브젝트에 대한 시점의 위치정보가 출력되고, 중간데이터를 사용하여, 시점으로부터의 오브젝트의 화상이 작성된다.
여기서, 화상데이터는, 정지화상이어도 되고, 동작 화상이어도 된다. 더구나, 화상데이터는, 예를 들면, 실사의 화상데이터이거나, CG이거나 상관없다.
도 1은, 종래의 화상의 표시방법을 설명하는 도면이다.
도 2는, 본 발명을 적용한 화상표시장치의 일실시예의 구성예를 나타내는 도면이다.
도 3은, 컴퓨터(1)의 하드웨어 구성예를 나타내는 블록도이다.
도 4a는, 화상표시장치에 의한 면상의 표시방법을 설명하는 도면이다. 도 4b는, 화상표시장치에 의한 화상의 표시방법을 설명하는 도면이다. 도 4c는, 화상표시장치에 의한 화상의 표시방법을 설명하는 도면이다.
도 5는, 화상처리장치로서의 컴퓨터의 제1 기능적 구성예를 나타내는 블록도이다.
도 6은, 화상처리장치에 의한 화상처리를 설명하는 흐름도이다.
도 7은, 화상데이터 베이스에 기억되는 화상데이터를 촬상(생성)하는 화상생성장치의 구성예를 나타내는 블록도이다.
도 8은, 화상생성장치에 의한 화상생성처리를 설명하는 흐름도이다.
도 9는, 모션베이스방식을 설명하는 도면이다.
도 10a는, 모션베이스의 이동예를 나타내는 도면이다.
도 10b는, 모션베이스의 이동예를 나타내는 도면이다.
도 11은, 턴테이블방식을 설명하는 도면이다.
도 12는, 카메라(41)의 구성예를 나타내는 사시도이다.
도 13은, 전방위 화상데이터를 나타내는 도면이다.
도 14는, 집광부(52)를 구성하는 쌍곡면을 설명하는 도면이다.
도 15는, 집광부(52)와 촬상부(53)와의 위치관계를 설명하기 위한 도면이다.
도 16은, 전방위 화상데이터를 나타내는 도면이다.
도 17은, 전방위 화상데이터로부터의 적출을 설명하기 위한 도면이다.
도 18은, 원주방향의 왜곡을 설명하기 위한 도면이다.
도 19는, 반경방향의 왜곡을 설명하기 위한 도면이다.
도 20은, 반경방향의 왜곡을 제거하는 방법을 설명하기 위한 도면이다.
도 21은, 반경방향의 왜곡을 제거하는 방법을 설명하기 위한 도면이다.
도 22a는, 반경방향의 왜곡을 제거하는 전방위 화상데이터의 변환을 설명하기 위한 도면이다.
도 22b는, 반경방향의 왜곡을 제거하는 전방위 화상데이터의 변환을 설명하기 위한 도면이다.
도 23은, 변환대상점에서의 화소값이 구하는 방법을 설명하기 위한 도면이다.
도 24는, 원화상데이터를, 사용자에서 본 제시용 화상데이터로 변환하는 변환원리를 설명하는 도면이다.
도 25는, 원화상데이터를, 사용자에서 본 제시용 화상데이터로 변환하는 변환원리를 설명하는 도면이다.
도 26은, 원화상데이터를 중간데이터로 변환하는 방법을 설명하는 도면이다.
도 27은, 원화상데이터를 중간데이터로 변환하는 화상데이터 변환처리를 설명하는 흐름도이다.
도 28은, 원화상데이터를 중간데이터로 변환하는 화상데이터 변환처리를 설명하는 도면이다.
도 29a는, 중간데이터의 포맷을 나타내는 도면이다.
도 29b는, 중간데이터의 포맷을 나타내는 도면이다.
도 30은, 중간데이터로서의 화상데이터를 나타내는 도면이다.
도 31a는, 중간데이터로서의 화상데이터의 보간을 설명하는 도면이다.
도 31b는, 중간데이터로서의 화상데이터의 보간을 설명하는 도면이다.
도 32는, 중간데이터로서의 화상데이터를 보간하는 화소값 보간처리를 설명하는 흐름도이다.
도 33은, 클래스 분류 적응처리를 행하는 클래스 분류 적응처리장치의 구성예를 나타내는 블록도이다.
도 34는, 클래스 분류 적응처리에 사용되는 탭계수를 학습하는 학습장치의 구성예를 나타내는 블록도이다.
도 35a는, 중간데이터의 다른 포맷을 나타내는 도면이다.
도 35b는, 중간데이터의 다른 포맷을 나타내는 도면이다.
도 36은, 중간데이터를 제시용 화상데이터로 변환하는 중간데이터 변환처리를 설명하는 흐름도이다.
도 37은, 중간데이터를 제시용 화상데이터로 변환하는 중간데이터 변환처리를 설명하는 도면이다.
도 38은, 화상처리장치로서의 컴퓨터(1)의 제2 기능적 구성예를 나타내는 블록도이다.
도 39a는, 원화상데이터를 제시용 화상데이터로 변환하는 변환원리를 설명하는 도면이다.
도 39b는, 원화상데이터를 제시용 화상데이터로 변환하는 변환원리를 설명하는 도면이다.
도 40은, 화상처리장치에 의한 화상처리를 설명하는 흐름도이다.
도 41은, 화상데이터 베이스(2)에 기억된 원화상데이터의 촬상방법을 설명하는 도면이다.
도 42는, 카메라가 이동하면서 원화상데이터의 촬상이 행해지고 있는 모양을 나타내는 도면이다.
도 43은, 스트립화상에 의해 구성되는 중간데이터를 나타내는 도면이다.
도 44는, 원화상데이터의 예를 나타내는 도면이다.
도 45a는, 중간데이터로서의 화상데이터의 예를 나타내는 도면이다.
도 45b는, 중간데이터로서의 화상데이터의 예를 나타내는 도면이다.
도 45c는, 중간데이터로서의 화상데이터의 예를 나타내는 도면이다.
도 45d는, 중간데이터로서의 화상데이터의 예를 나타내는 도면이다.
도 46은, 중간데이터로서의 화상데이터의 예를 나타내는 도면이다.
도 46은, 원화상데이터를 중간데이터로 변환하는 화상데이터 변환처리를 설명하는 흐름도이다.
도 47은, 원화상데이터를 중간데이터로 변환하는 화상데이터 변환처리를 설명하는 도면이다.
도 48a는, 중간데이터의 포맷을 나타내는 도면이다.
도 48b는, 중간데이터의 포맷을 나타내는 도면이다.
도 49는, 중간데이터로서의 화상데이터를 보간하는 화소값 보간처리를 설명하는 흐름도이다.
도 50은, 중간데이터를 제시용 화상데이터로 변환하는 중간데이터 변환처리를 설명하는 흐름도이다.
도 51은, 중간데이터를 제시용 화상데이터로 변환하는 중간데이터 변환처리를 설명하는 도면이다.
도 52는, 화상처리장치로서의 컴퓨터(1)의 제3 기능적 구성예를 나타내는 블록도이다.
도 53은, 촬상조건을 구하는 방법을 설명하는 도면이다.
도 54는, 촬상조건을 추정하는 촬상조건 연산처리를 설명하는 흐름도이다.
도 2는, 본 발명을 적용한 화상표시장치의 일실시예의 구성예를 나타내고 있다. 컴퓨터(1)는, 예를 들면, 워크스테이션으로, 화상데이터 베이스(2)에 기억된 원화상데이터를, 후술하는 중간데이터로 변환하고, 중간데이터 베이스(3)에 기억시킨다. 또한, 컴퓨터(1)는, 위치센서로서의 리시버(4) 및 트랜스미터(5)를 제어하고, 리시버(4)의 출력에 근거하여, 사용자의 위치(그 위에는 필요에 따라 자세)를 검출한다. 더구나, 컴퓨터(1)는, 사용자의 위치를, 사용자의 시점의 위치로서 설정하고, 중간데이터 베이스(3)에 기억된 중간데이터를, 그 사용자의 시점에서 본 화상데이터(이하, 적절히, 제시용 화상데이터라 함)로 변환한다. 그리고, 컴퓨터(1)는, 제시용 화상데이터를, 디스플레이(6)에 공급하여 표시시킨다.
화상데이터 베이스(2)는, 후술하는 바와 같이, 카메라 등의 촬상장치로 촬상된 실사의 화상데이터로서의 원화상데이터를 기억하고 있다. 중간데이터 베이스(3)는, 컴퓨터(1)로부터 공급되는, 원화상데이터를 변환한 중간데이터를 기억한다. 리시버(4)는, 사용자에 장착되어 있고, 트랜스미터(5)가 발생하는 자계를 검지하여, 그 자계의 강도를, 컴퓨터(1)에 공급한다. 트랜스미터(5)는, 컴퓨터(1)의 제어 하에 있고, 자계를 발생한다. 즉, 도 2의 실시예에서는, 리시버(4) 및 트랜스미터(5)는, 위치센서로서의 자계센서를 구성하고 있고, 리시버(4)가, 트랜스미터가 발생하는 자계의 강도를 계측함으로써, 리시버(4)의 위치, 나아가서는, 사용자의 위치가 검출되게 되어 있다.
여기서, 리시버(4)는, 예를 들면, 사용자의 머리 부분에 장착된다. 또한, 사용자가, 예를 들면, 넥타이핀을 착용하고 있거나, 또는 안경을 쓰고 있는 경우에는, 리시버(4)는, 그 넥타이핀이나 안경의 프레임에 장착하는 것을 할 수 있다.
이때, 위치센서인 자계센서로서는, 예를 들면, 폴헤무스(Polhemus)사의 3차원 위치센서 등을 채용할 수 있다.
또한, 위치센서로서는, 자계센서 외, 예를 들면, 기계링크식의 위치계측수단(예를 들면, 3차원 디지타이저 등)을 채용하는 것이 가능하다. 더구나, 위치센서로서는, 예를 들면, 조이스틱이나 트랙볼 등의, 사용자의 위치의 변화를 입력할 수 있는 수단을 채용하는 것도 가능하다. 즉, 여기서는, 위치센서는, 실제의 사용자의 위치를 검지하는 수단일 필요는 없고, 가상적인 사용자의 위치를 입 력할 수 있는 수단이어도 된다.
디스플레이(6)는, 예를 들면, CRT나 액정패널 등으로 구성되고, 컴퓨터(1)로부터 공급되는 제시용 화상데이터를 표시한다. 이때, 디스플레이(6)로서는, CRT나 액정패널 이외에, 예를 들면, 프로젝터나 HMD(Head Mount Display), 그 밖의 화상을 표시할 수 있는 수단을 채용하는 것이 가능하다.
다음에, 도 3은, 도 1의 컴퓨터(1)의 하드웨어 구성예를 나타내고 있다.
컴퓨터(1)에는, 후술하는 일련의 처리를 실행하는 프로그램이 인스톨되어 있다.
프로그램은, 컴퓨터(1)에 내장되어 있는 기록매체로서의 하드디스크나 ROM(13)에 미리 기록해 둘 수 있다.
혹은 또한, 프로그램은, 플랙서블 디스크, CD-ROM(Compact Disc Read Only Memory), MO(Magneto Optical) 디스크, DVD(Digital Versatile Disc), 자기디스크, 반도체 메모리 등의 리무버블 기록매체(21)에, 일시적 혹은 영속적으로 저장(기록)해 놓을 수 있다. 이러한 리무버블 기록매체(21)는, 소위 패키지 소프트웨어로서 제공할 수 있다.
이때, 프로그램은, 전술한 바와 같은 리무버블 기록매체(21)로부터 컴퓨터(1)에 인스톨하는 것 외, 다운로드 사이트로부터, 디지털 위성방송용의 인공위성을 통해, 컴퓨터(1)에 무선으로 전송하거나, LAN(Local Area Network), 인터넷이라 했던 네트워크를 통해, 컴퓨터(1)에 유선(20)으로 전송하고, 컴퓨터(1)에서는, 그와 같이 하여 전송되어 오는 프로그램을, 통신부(18)에서 수신하며, 내장한 하드디스크(15)에 인스톨하는 것이 가능하다.
컴퓨터(1)는, CPU(Central Processing Unit)(12)를 내장하고 있다. CPU(12)에는, 버스(11)를 통해, 입출력 인터페이스(20)가 접속되어 있고, CPU(12)는, 입출력 인터페이스(20)를 통해, 사용자에 의해, 키보드나, 마우스, 마이크 등으로 구성되는 입력부(17)가 조작 등 됨으로써 지령이 입력되면, 그것에 따라, ROM(Read Only Memory)(13)에 저장되어 있는 프로그램을 실행한다. 혹은, 또한, CPU(12)는, 하드디스크(15)에 저장되어 있는 프로그램, 위성 또는 네트워크로부터 전송되고, 통신부(18)에서 수신되어 하드디스크(15)에 인스톨된 프로그램, 또는 드라이브(19)에 장착된 리무버블 기록매체(21)로부터 판독되어 하드디스크(15)에 인스톨된 프로그램을, RAM(Random Access Memory)(14)에 로드하여 실행한다. 이에 따라, CPU(12)는, 후술하는 흐름도에 따른 처리, 혹은 후술하는 블록도의 구성에 의해 행해지는 처리를 행한다. 그리고, CPU(12)는, 그 처리결과를, 필요에 따라, 예를 들면, 입출력 인터페이스(20)를 통해, 스피커 등으로 구성되는 출력부(16)로부터 출력, 혹은, 통신부(18)로부터 송신, 그 위에, 하드디스크(15)에 기록 등 시킨다.
이때, 도 3의 실시예에서는, 입출력 인터페이스(20)에, 화상데이터 베이스(2), 중간데이터 베이스(3), 리시버(4), 트랜스미터(5), 및 디스플레이(6)가 접속되어 있다. 그리고, CPU(12)는, 화상데이터 베이스(2)에 기억된 원화상데이터를, 입출력 인터페이스(20)를 통해 판독하고, 중간데이터로 변환한다. 더구나, CPU(12)은, 그 중간데이터를, 입출력 인터페이스(20)를 통해, 중간데이터 베이스(3)에 기억시킨다. 또한, CPU(12)는, 입출력 인터페이스(20)를 통해, 트랜스 미터(5)를 제어함과 동시에, 리시버(4)의 출력을 수신하고, 사용자의 위치를 검출한다. 더구나, CPU(12)는, 검출한 사용자의 위치를, 사용자의 시점으로서 설정하고, 그 사용자의 시점에 대응하여, 중간데이터 베이스(3)에 기억된 중간데이터를, 제시용 화상데이터로 변환한다. 또한, CPU(12)는, 제시용 데이터를, 입출력 인터페이스(20)를 통해, 디스플레이(6)에 공급하여 표시시킨다.
여기서, 본 명세서에서, 컴퓨터(1)에 각종의 처리를 행하게 하기 위한 프로그램을 기술하는 처리스텝은, 반드시 후술하는 흐름도로서 기재된 순서에 따라 시계열로 처리할 필요는 없고, 병렬적 혹은 개별로 실행되는 처리(예를 들면, 병렬처리 혹은 오브젝트에 의한 처리)도 포함하는 것이다.
또한, 프로그램은, 도면부호 1의 컴퓨터에 의해 처리되어도 되고, 복수의 컴퓨터에 의해 분산 처리되어도 된다. 더구나, 프로그램은, 네트워크를 통한 원방의 컴퓨터에 전송되어 실행되어도 된다.
이상과 같은 도 3의 컴퓨터(1)를 베이스로 하여 구성되는 도 2의 화상표시장치로서는, 예를 들면, 도 4a에 나타내는 바와 같이, 현실세계에서, 사용자가, 어떤 피사체를 관찰하는 경우와 동일한 제시용 화상데이터가 표시된다.
즉, 현실세계에서, 사용자가, 어떤 피사체를 관찰하는 경우에는, 사용자가, 그 시점을 이동하면, 사용자는, 그 이동 후의 시점에서 본 피사체를 관찰할 수 있다. 구체적으로는, 현실세계에서는, 사용자가, 그 시점을 이동함으로써, 피사체가 보이는 부분으로 볼 수 없는 부분이 변화된다.
도 2의 화상표시장치에서도, 도 4b에 나타내는 바와 같이, 사용자가, 그 시 점을 이동한 경우, 그 시점에 따라, 디스플레이(6)에 표시되는 제시용 화상데이터가, 현실세계에서 사용자의 시각에 비치는 피사체가 표시된 것으로 되게 되어 있다. 즉, 도 2의 화상표시장치에서는, 도 4c에 나타내는 바와 같이, 사용자가 시점을 이동한 경우에, 그 시점으로부터 피사체를 본 경우의 제시용 화상데이터가 표시되게 되어 있다.
따라서, 도 2의 화상표시장치에서는, 사용자가 시점을 이동하면, 예를 들면, 이동 전의 시점에서는 보이지 않았던 피사체의 부분이 보이는 상태로 된 제시용 화상데이터가 표시된다. 즉, 사용자가, 디스플레이(6)에서의 제시용 화상데이터에 표시된 피사체를 들여다보도록, 시점을 이동하면, 현실세계에서, 그 이동 후의 시점에서 피사체를 본 경우에 시각에 비치는 것과 동일한 제시용 화상데이터, 요컨대, 사용자가 들여다 본 피사체의 부분이 보이는 상태로 된 제시용 화상데이터가 표시된다. 이것으로부터, 도 2의 화상표시장치는, 말하자면, 「들여다보는 텔레비전(Television)」이라 할 수 있다.
다음에, 도 5는, 도 3의 컴퓨터(1)가 프로그램을 실행함으로써 실현되는 처리와 동일한 처리를 행하는 화상처리장치의 기능적 구성예를 나타내고 있다.
컴퓨터(1)(의 CPU(12))가 프로그램을 실행함으로써 실현되는 처리와 동일한 처리를 행하는 화상처리장치는, 데이터 변환부(30) 및 센서제어부(33)로 구성된다. 데이터 변환부(30)는, 화상데이터 변환부(31)와 중간데이터 변환부(32)로 구성되고, 화상데이터 베이스(2)에 기억된 원화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 그 원화상데이터를, 센서제 어부(33)로부터 공급되는 사용자의 시점에서 보이는 제시용 화상데이터로 변환하고, 디스플레이(6)에 공급하여 표시시킨다.
즉, 화상데이터 변환부(31)는, 화상데이터 베이스(2)로부터 원화상데이터를 판독, 중간데이터로 기하 변환한다. 더구나, 화상데이터 변환부(31)는, 중간데이터를, 중간데이터 베이스(3)에 공급하여 기억시킨다.
중간데이터 변환부(32)는, 센서제어부(33)로부터 공급되는 사용자의 시점에 근거하여, 중간데이터를, 제시용 화상데이터로 변환하고, 즉, 사용자의 시점에서 본 화상데이터를 재구성하고, 디스플레이(6)에 공급하여 표시시킨다.
센서제어부(33)는, 위치센서로서의 리시버(4) 및 트랜스미터(5)를 제어함으로써, 사용자의 시점을 검출하고, 중간데이터 변환부(32)에 공급한다. 즉, 센서제어부(33)는, 트랜스미터(5)를 제어함으로써, 자계를 발생시킨다. 더구나, 센서제어부(33)는, 리시버(4)로부터 공급되는, 트랜스미터(5)가 발생하는 자계의 검출결과에 근거하여, 사용자의 위치를 검출하고, 그 위치를, 사용자의 시점으로서 설정하여, 중간데이터 변환부(32)에 공급한다.
다음에, 도 6의 흐름도를 참조하여, 도 5의 화상처리장치(컴퓨터)(1)에 의한 화상처리에 대하여 설명한다.
우선 처음에, 스텝 S1에서, 화상데이터 변환부(31)는, 화상데이터 베이스(2)로부터 원화상데이터를 판독하고, 중간데이터로 변환한다. 더구나, 스텝 S1에서는, 화상데이터 변환부(31)는, 중간데이터를, 중간데이터 베이스(3)에 공급하여 기억시켜, 스텝 S2로 진행한다.
스텝 S2에서는, 센서제어부(33)가, 리시버(4)의 출력으로부터, 사용자의 위치를 검출하고, 더구나, 그 사용자의 위치를, 사용자의 시점에 설정하여, 중간데이터 변환부(32)에 공급한다.
그리고, 스텝 S3으로 진행하고, 중간데이터 변환부(32)는, 센서제어부(33)로부터 공급되는 사용자의 시점에 근거하여, 중간데이터를, 제시용 화상데이터로 변환하고, 스텝 S4로 진행한다.
스텝 S4에서는, 중간데이터 변환부(32)는, 제시용 화상데이터를 디스플레이(6)에 공급하여 표시시켜, 스텝 S5로 진행한다.
스텝 S5에서는, 예를 들면, 사용자가, 화상처리를 종료하도록, 입력부(17)(도 3)를 조작했는지 어떤지를, CPU(12)(도 3)가 판정한다. 스텝 S5에서, 화상처리를 종료하도록, 입력부(17)가 조작되어 있지 않다고 판정된 경우, 스텝 S2로 되돌아가, 이하, 동일한 처리가 반복된다.
또한, 스텝 S5에서, 화상처리를 종료하도록, 입력부(17)가 조작되었다고 판정된 경우, 처리를 종료한다.
이때, 도 6의 화상처리가, 과거에 실행되고, 화상데이터 베이스(2)에 기억되어 있는 원화상데이터를 변환한 중간데이터가, 중간데이터 베이스(3)에, 이미 기억되어 있는 경우에는, 스텝 S1의 처리는, 스킵할 수 있다.
다음에, 도 7은, 화상데이터 베이스(2)에 기억시키는 원화상데이터를 생성(촬상)하는 화상생성장치의 구성예를 나타내고 있다.
카메라(41)는, 도 7의 실시예에서는, 예를 들면, 소위 전방위 카메라로 구성 되고, 피사체를 포함하는 전방위의 화상데이터(전방위 화상데이터)를, 컨트롤러(47)의 제어에 따라 촬상하고, 버퍼(42)에 공급한다.
버퍼(42)는, 카메라(41)로부터 공급되는 전방위 화상데이터를 일시 기억한다.
전방위 화상변환부(43)는, 버퍼(42)에 기억된 전방위 화상데이터를 판독하고, 후술하는 위도경도 표현의 원화상데이터로 변환하여, 버퍼(44)에 공급한다.
버퍼(44)는, 전방위 화상변환부(43)로부터 공급되는 원화상데이터를 일시 기억한다.
구동기구(45)는, 구동기구 제어부(46)의 제어 하에 있고, 카메라(41)에서 촬상하는 촬상대상으로 되어 있는 피사체를 이동한다. 여기서, 구동기구(45)에 의해 피사체가 이동됨으로써, 상대적으로, 피사체에 대한 카메라(41)의 시점(광학중심)이, 복수의 위치로 변경된다.
구동기구 제어부(46)는, 컨트롤러(47)의 제어 하에 있고, 구동기구를 구동한다.
컨트롤러(47)는, 카메라(41)의 촬상타이밍이나, 구동기구 제어부(46)에 의한 구동기구(45)의 구동속도 및 구동방향 등을 제어한다. 더구나, 컨트롤러(47)는, 카메라(41)의 촬상타이밍(촬상시간)이나, 구동기구(45)에 의해 이동되는 피사체의 위치(필요에 따라, 피사체의 자세를 포함함)를 나타내는 정보 등을, mux(멀티플렉서)(48)에 공급한다.
멀티플렉서(48)는, 버퍼(44)에 기억된 원화상데이터의 각 프레임에, 그 프레 임에 대하여 컨트롤러(47)가 출력하는 정보를 부가하고, 화상데이터 베이스(2)에 공급하여 기억시킨다.
다음에, 도 8의 흐름도를 참조하여, 도 7의 화상생성장치에 의한 화상생성처리에 대하여 설명한다.
우선 처음에, 컨트롤러(47)는, 피사체를 소정의 위치로 이동시켜, 그 촬상을 행하도록, 카메라(41) 및 구동기구 제어부(46)를 제어함과 동시에, 그 소정의 위치와 피사체의 촬상타이밍을 나타내는 정보를, mux(48)에 공급한다.
여기서, 컨트롤러(47)는, 예를 들면, 현실세계에, 3차원 좌표계(이하, 적절히, 촬상시 좌표계라 함)를 미리 설정하고, 그 촬상시 좌표계에서의 피사체의 좌표를, 피사체의 위치를 나타내는 정보(이하, 적절히, 위치정보라 함)로서 출력한다. 또한, 컨트롤러(47)는, 피사체의 어떤 자세(예를 들면, 피사체의 촬상개시시의 자세)를 기준자세로서, 그 기준자세로부터의 피사체의 변화를 나타내는 각도도, 위치정보에 포함하여 출력한다. 더구나, 컨트롤러(47)는, 촬상시 좌표계에서의, 카메라(41)의 위치(예를 들면, 렌즈중심의 위치)를 나타내는 좌표와, 그 광축방향(시선의 방향)을 나타내는 정보도, 위치정보에 포함시켜 출력한다.
이때, 후술하는 도 9에서 설명하는 모션베이스방식이나, 도 11에서 설명하는 턴테이블 방식에 의해, 피사체를 움직이는 경우에는, 카메라(41)의 렌즈중심(광학중심)의 위치 및 광축방향은, 변화하지 않고 고정되지만, 이 카메라(41)의 렌즈중심의 위치 및 광축방향은, 컨트롤러(47)에 미리 설정되어 있는 것으로 한다.
또한, 전술한 피사체의 좌표나 자세는, 실제로는, 피사체를 이동시키는 구동 기구(45)의 상태로부터 파악된다. 여기서, 구동기구(45)의 상태는, 구동기구(45)를, 구동기구 제어부(46)를 통해 제어하는 컨트롤러(47)에 의해 인식된다.
스텝 S11에서, 구동기구 제어부(46)는, 컨트롤러(47)의 제어 하에 있고, 구동기구(45)를 제어함으로써, 피사체의 위치를 변화시켜, 스텝 S12로 진행한다. 스텝 S12에서는, 카메라(41)가 컨트롤러(47)의 제어 하에 있고, 피사체를 촬상하여, 그 결과 얻어지는 전방위 화상데이터를, 버퍼(42)에 공급하여 기억시킨다.
그리고, 스텝 S13으로 진행하고, 전방위 화상변환부(43)는, 버퍼(42)에 기억 된 전방위 화상데이터를 판독하고, 위도경도 표현의 원화상데이터로 변환하여, 버퍼(44)에 공급한다. 그 후, 스텝 S14로 진행하고, mux(48)는, 버퍼(44)에 기억된 원화상데이터의 프레임에, 컨트롤러(47)로부터 공급되는 정보를 부가하고, 화상데이터 베이스(2)에 공급하여 기억시킨다.
스텝 S14의 처리 후에는, 스텝 S15로 진행하고, 컨트롤러(47)는, 피사체를, 미리 설정한 모든 위치에 이동했는지 어떤지(그 위에, 필요에 따라, 미리 설정한 모든 자세를 취하게 했는지 어떤지)를 판정하고, 아직, 모든 위치로 이동하고 있지 않다고 판정된 경우, 피사체를, 아직 이동시키고 있지 않은 위치로 이동시켜, 그 촬상을 행하도록, 카메라(41) 및 구동기구 제어부(46)를 제어함과 동시에, 피사체의 이동위치와 피사체의 촬상타이밍을 나타내는 정보 외를, mux(48)에 공급한다. 그리고, 스텝 S11로 되돌아가, 이하와 같은 처리가 반복된다.
또한, 스텝 S15에서, 피사체를, 미리 설정한 모든 위치로 이동했다고 판정된 경우, 즉, 미리 설정한 모든 위치에서, 피사체의 촬상이 행해진 경우, 처리를 종료 한다.
다음에, 도 7의 화상생성장치에서, 피사체의 전방위 화상을 촬상할 때에 피사체를 이동시키는 경우의 피사체의 이동방식에 대하여 설명한다.
도 7의 화상생성장치에서는, 피사체를 이동시키면서, 그 촬상이 행해지지만, 이 경우, 그 피사체의 위치를 정밀도 좋게 제어해야 한다. 그와 같은 피사체의 이동방식으로서는, 예를 들면, 모션베이스방식이나 턴테이블방식이 있다.
모션베이스방식에서는, 도 9에 나타내는 바와 같이, 구동기구(45)로서, 모션베이스가 사용된다. 그리고, 구동기구(45)로서의 모션베이스 상에 피사체를 실어, 예를 들면, 피사체가 병진운동하도록, 모션베이스가(카메라(41)로 향하여) 상하좌우로 이동된다.
즉, 모션베이스방식에서는, 구동기구(45)로서의 모션베이스를, 예를 들면, 도 10a에 나타내는 바와 같이, 상하방향으로 이동하면서, 서서히, 좌측에서 우측으로 이동한다. 여기서, 도 10b는, 실제의 모션베이스의 궤적을 나타내고 있다. 이때, 도 10b에서, 모션베이스의 궤적과 함께, TC:의 후에 계속하여 표시하고 있는 숫자는, 카메라(41)에서 촬상된 화상의 타임코드를 나타낸다. 따라서, 도 10b에서는, 모션베이스의 궤적과 타임코드가 대응하게 되어 있으므로, 피사체의 위치(자세)와, 그 위치에 있는 피사체를 촬상한 화상데이터의 프레임과의 대응관계를 인식할 수 있다.
도 9의 모션베이스방식에 의하면, 피사체와 카메라(41)와의 사이에 상정할 수 있는 개곡면으로서의, 예를 들면 평면 상의 복수의 점을 시점으로서 피사체를 촬상하였을 때의, 피사체로부터의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 얻을 수 있다. 이때, 피사체로부터의 광선에 대응하는 화소값은, 카메라(41)가 출력하는 화상데이터로부터 얻을 수 있어, 피사체로부터의 궤적은, 카메라(41)와 피사체의 위치로부터 얻을 수 있다.
턴테이블방식에서는, 도 11에 나타내는 바와 같이, 구동기구(45)로서, 턴테이블(대차)이 사용된다. 그리고, 구동기구(45)로서의 턴테이블 상에 피사체를 실고, 턴테이블을 매우 저속으로 위 또는 아래 방향으로 이동시키면서 일정한 각속도로 회전시킨다.
도 11의 턴테이블방식에 의하면, 피사체를 둘러싸는 개곡면으로서 원주를 상정하면, 상정된 원주의 측면 상의 복수의 점을 시점으로서 피사체를 촬상하였을 때의 광선정보를 얻을 수 있다.
이때, 도 7의 화상생성장치에서는, 피사체를 이동시킴으로써, 그 피사체를 복수의 시점 각각에서 본 화상데이터의 촬상을 행하도록 하였지만, 피사체를 이동시키지 않고, 카메라(41)를 이동시킴으로써, 피사체를 복수의 시점 각각에서 본 화상데이터의 촬상을 행하도록 하는 것도 가능하다. 피사체의 전방위 화상데이터를 취득할 수 있으면, 상기 이외의 방법이어도 된다.
또한, 도 7의 화상생성장치에서는, 1대의 카메라(41)를 사용하고, 피사체를 이동시킴으로써, 피사체를 복수의 시점 각각에서 본 화상데이터의 촬상을 행하도록 하였다. 이 방법 이외에도, 예를 들면, 다른 위치에 배치한 복수대의 카메라를 사용하여 피사체를 촬상함으로써, 피사체를 복수의 시점 각각에서 본 화상데이터의 촬상을 행하는 것도 가능하다.
다음에, 도 7의 화상생성장치에서는, 카메라(41)로서, 전방위 카메라가 채용되어 있지만, 이 전방위 카메라에 의한 화상의 촬상과, 전방위 화상변환부(43)에 의한 전방위 화상데이터의 변환에 대하여 설명한다.
도 12는, 도 7의 카메라(41)로서의 전방위 카메라의 광학계의 구성예를 나타내고 있다.
도 12의 실시예에서는, 카메라(41)는, 집광부(52)가, 촬상부(53)의 상부에 배치된 지지체(51)에 의해 지지되는 것에 의해 구성되어 있고, 집광부(52)의 주위 360도의 방향을 촬상할 수 있게 되어 있다.
지지체(51)는, 유리 등의 반사율이 낮은 투명재료로 이루어지고, 유리면에서의 빛의 굴절을 최소화하기 위해, 입사광이 유리면과 직교하도록, 집광부(52)의 후술하는 초점을 중심으로 한 구면으로 되어 있다.
집광부(52)는, 예를 들면, 쌍곡면 형상의 미러(쌍곡면 미러)로 구성되고, 지지체(51)를 통해 입사하는 주위의 빛을, 촬상부(53)의 방향으로 반사한다.
촬상부(53)는, 예를 들면, CCD(Charge Coupled Device) 등의 광전변환소자로 구성되고, 거기에 입사하는 빛을 전기신호로서의 화상데이터로 변환한다. 이 촬상부(53)에서 얻어지는 화상데이터가, 카메라(41)의 출력으로서, 도 7의 버퍼(42)에 공급된다.
여기서, 도 12에 나타낸 전방위 카메라의 구성이나 집광의 원리에 대해서는, 예를 들면, 「이동로봇용 전방위 시각센서의 개발」, 자동화기술 제29권 제6호(1997년)(이하, 적절히, 문헌 1이라 함)에 개시되어 있기 때문에, 여기서는, 간단히 설명한다.
도 13은, 도 12의 카메라(41)에 의해 촬상된 전방위 화상데이터의 예를 나타내고 있다.
전방위 화상데이터는, 중심점 C1을 중심으로 하는 2개의 원의 원주 F1과 F2에 의해 구분된다. 이때, 도 13에서는, 원주 F1 쪽이, 원주 F2 보다도 반경이 큰 것으로 되어 있다.
즉, 전방위 화상데이터는, 큰 원주 F1의 내측에서, 또한 작은 원주 F2의 외측으로 되어 있는 영역 R1, 큰 원주 F1의 외측의 영역 R2, 작은 원주 F2에 둘러싸인 영역(내측의 영역) R3으로 구성된다.
이상의 3개의 영역 R1 내지 R3 중, 영역 R1에서는, 집광부(52)에서 반사된, 주위에서의 빛에 대응하는 화상데이터가 촬상되어 있고, 영역 R2에서는, 집광부(52)의 외측의 부분이 촬상되어 있다. 또한, 영역 R3에는, 촬상부(53) 자신이 촬상되어 있다.
더구나, 도 13의 실시예에서는, 영역 R1에는, 복수의 건물이 촬상되어 있지만, 원주 F1에 가까운 방향으로, 건물의 상부가 촬상되고, 원주 F2에 가까운 방향으로, 건물의 하부가 촬상되어 있다.
다음에, 도 14를 참조하여, 도 12의 집광부(52)를 구성하는 쌍곡면에 대하여 설명한다.
집광부(52)는, 쌍곡면의 일부에 의해 구성되어 있고, 쌍곡면의 축에 대한 수 직면에 의해, 쌍곡면을 절단하여 얻을 수 있는 쌍곡면의 볼록형 선두부의 볼록형 면에, 경면을 형성한 것으로 되어 있다.
집광부(52)에는, 쌍곡면의 하나인 2엽 쌍곡면을 사용할 수 있고, 2엽 쌍곡면은, 도 14에 나타내는 바와 같이, 쌍곡선을 축(도 14에서는, Z축)회전으로 회전하여 얻어지는 곡면으로, Z>0의 영역에 존재하는 하에 볼록한 쌍곡면 H1과, Z<0의 영역에 존재하는 상에 볼록한 쌍곡면 H2로 구성된다.
집광부(52)에는, 2엽의 쌍곡면 H1과 H2 중, Z>0의 영역에 있는 쌍곡면 H1을 이용한다. 이때, 이하, 적절히, Z축을, 쌍곡선의 중심축 또는 간단히 축이라고도 한다.
도 14에 나타낸 X, Y, Z의 3차원 직교좌표계에서, 2엽 쌍곡면 H1과 H2는, 식 (1)로 표시된다.
Figure 112004004287481-pct00001
여기서, 식 (1)에 있어서, 정수 a와 b는, 쌍곡면 H1 및 H2의 형상을 정의하는 정수이다. 즉, 정수 b는, 원점 ○으로부터, 쌍곡면 H1(H2)과 Z축과의 교점까지의 거리를 나타낸다. 또한, 정수 a는, 그 교점을 지나는, XY 평면과 평행한 평면과, 쌍곡면 H1(H2)의 점근면 A1과의 교선이 그리는 원의 반경을 나타낸다.
더구나, 식 (1)에서, 정수 c는, 쌍곡면 H1 및 H2의 초점의 위치를 정의하는 정수이다. 즉, Z축 상의 +c의 위치(0, 0, +c)가, 쌍곡면 H2의 초점 f1이 되고, Z축 상의 -c의 위치(0, 0, -c)가, 쌍곡면 H1의 초점 f2가 된다.
이때, 정수 a, b, c는, 다음식으로 표시되는 관계를 갖는다.
Figure 112004004287481-pct00002
집광부(52)가, 도 14에서 설명한 바와 같은 쌍곡면 H1로 구성된다고 한 경우, 촬상부(53)는, 도 15에 나타내는 바와 같이, 그 렌즈의 중심축(광축)이 Z축에 일치하고, 또한, 렌즈중심(카메라(41)의 렌즈중심)이, 쌍곡면 H1의 초점 f2에 일치하도록 배치된다.
다음에, 촬상부(53)가 출력하는 전방위 화상데이터는, 전술한 도 13에 나타낸 것으로 되지만, 지금, 이 전방위 화상데이터에 대하여, 도 16에 나타내는 바와 같이, 그 좌측 상의 점을 원점 ○으로 함과 동시에, 좌측에서 우측방향으로 x축을 잡고, 위에서 아래방향으로 y축을 잡은 2차원 직교좌표계를 정의한다.
이 경우, 원주 F1의 원 및 원주 F2의 원의 중심점 C1의 좌표를 (X0, Y0)로 함과 동시에, 원주 F1의 원의 반경을 rF1로 하고, 원주 F2의 원의 반경을 rF2로 하면, 원주 F1의 외측의 영역 R2를 구성하는 점 (x, y)는, 식 (3)에 의해 표시되고, 원주 F2의 내측의 영역 R3을 구성하는 점(x, y)는, 식 (4)에 의해 표시된다.
Figure 112004004287481-pct00003
Figure 112004004287481-pct00004
도 7의 전방위 화상변환부(43)는, 전방위 화상데이터를 위도경도 표현의 원 화상데이터로 변환하기 전에, 식 (3)에서 표시되는 영역 R2를 구성하는 화소값과, 식 (4)에서 표시되는 영역 R3을 구성하는 화소값을, 화소값으로서는 일반적으로 취득하지 않은 값(예를 들면, 0)으로 변환한다.
여기서, 이 화소값의 변환에 있어서는, 중심점 C1의 좌표(X0, Y0) 및 반경 rF1 및 rF2가 필요하게 되지만, 이것들의 정보는, 카메라(41)로부터 버퍼(42)를 통해, 전방위 화상변환부(43)에 공급되게 되어 있다.
이때, 여기서는, 설명을 간단히 하기 위해, 노출시간이나, 조리개, 줌은, 고정으로 한다.
또한, 도 13이나 도 16에 나타낸 영역 R1의 화상데이터인 전방위 화상데이터에 대해서는, 원하는 피사체가 표시되어 있는 부분 등의, 전방위 화상데이터의 일부분만 필요한 경우가 있고, 이 경우, 전방위 화상데이터로부터, 그 필요한 부분을 적출할 필요가 있지만, 이 적출은, 전방위 화상변환부(43)에서 행해지게 되어 있다. 즉, 전방위 화상변환부(43)는, 도 17에 나타내는 바와 같이, 원하는 피사체를 포함하는 영역 R11로서, 중심점 C1을 지나는 반경방향의 2개의 직선 Lc1과 Lc2에 둘러싸이고, 또한 중심점 C1을 중심으로 하는 2개의 원의 원주 Fc1과 Fc2에 둘러싸이는 대략 부채꼴인 영역 R11의 화상데이터를 적출한다.
다음에, 전방위 화상데이터는, 도 13이나 도 16에 나타낸 바와 같이, 중심점 C1에 가까워질 수록 좁아진 것으로 되어, 반대로, 중심점 C1에서 멀어질 수록 넓어진 것으로 되는 왜곡을 갖는다. 이것은, 전방위 화상변환부(43)가 전방위 화상데이 터로부터 적출하는 대략 부채꼴의 화상데이터에 대해서도 동일하고, 이와 같은 왜곡이 있는 화상데이터는, 도 5의 화상처리장치에서 처리 등 하는 데 있어서, 왜곡이 없는 것으로 변환할 필요가 있다.
전방위 카메라인 카메라(41)가 출력하는, 전술한 바와 같이 전방위 화상데이터의 왜곡은, 중심점 C1을 지나는 원의 원주방향의 왜곡과, 반경방향의 왜곡으로 나누어 생각할 수 있다.
그래서, 우선 원주방향의 왜곡을 생각해 보면, 도 13이나 도 16의 전방위 화상데이터의, 중심점 C1을 중심으로 하는 어떤 원의 원주 상에서는, 스케일이 일정하고, 따라서, 왜곡은 없다.
즉, 도 18은, Z축방향에서 본 집광부(52)로서의 쌍곡면 H1을 나타내고 있다.
도 18에서는, 피사체 상의 어떤 점 P(X, Y, Z)로부터, Z축으로 향하여, X축(XZ 평면)과 각도 θ를 만들도록, 광선 r이 입사하고 있다. 이 광선 r은, 쌍곡면 H1에서 반사되고, 후술하는 도 19에 도시해 놓은 촬상부(53)의 수광면(화상면)(가상스크린) A3 상의 점 p(x, y)에 도달한다. 그리고, 이 경우, 점 p(x, y)는, X축(XZ 평면)과의 사이에서, 광선 r이 X축과의 사이에서 만드는 것과 동일한 각도 θ를 만든다.
또한, Z축으로 향하여, X축과 각도 θ'를 만들도록 입사하는 광선 r'를 생각한 경우, 이 광선 r'도, 쌍곡면 H1에서 반사되고, 수광면(면상면) A3 상의 점 p'(x', y')에 도달한다. 그리고, 이 경우도, 점 p'(x', y')는, X축과의 사이에서, 광선 r'가 X축과의 사이에서 만드는 것과 동일한 각도 θ'를 만든다.
또한, 광선 r과 r'의, Z축에 대한 앙각(仰角)(후술함)이 동일하면, 광선 r 및 r'는, 수광면 A3 상의, 위치는 다르지만, Z축으로부터 동일거리 rp만큼 멀어진 점에서 수광된다.
이상으로부터, Z축에 대한 앙각이 동일한 복수의 광선 각각은, 수광면 A3 상의, Z축으로부터 동일한 거리에 있는 점으로서, X축과의 사이에서, 광선과 X축이 만드는 것과 동일한 각도를 만드는 점에서 수광된다.
따라서, Z축에 대한 앙각이 동일해서, X축과의 각도가 등각도인 복수의 광선은, 수광면 A3의, Z축을 중심으로 하는 원주 상에, 등간격으로 입사하게 되기 때문에, 전방위 화상데이터에 있어서, 수광면 A3과 Z축과의 교점에 대응하는 중심점 C1을 중심으로 하는 원의 원주방향에는, 왜곡은 생기지 않는다.
한편, 도 13이나 도 16의 전방위 화상데이터의, 중심점 C1을 지나는 반경방향의 직선 상에서는, 중심점 C1에 가까워질 수록, 스케일이 작아져, 중심점 C1에서 멀어질 수록, 스케일이 커지기 때문에, 전방위 화상데이터는, 반경방향의 왜곡을 갖는다.
즉, 도 19는, X축방향에서 본 집광부(52)로서의 쌍곡면 H1을 나타내고 있다.
도 19에서, Z축에 대하여 앙각 0도로, 초점 f1로 향하여 입사하는 광선, r1은, 쌍곡면 H1에서 반사되고, 초점 f2로 향하여, 촬상부(53)의 수광면(화상면) A3에서 수광된다.
여기서, Z축에 대한 앙각이란, Z축 상의 초점 f1을 지나, XY 면에 평행한 면과, 초점 f1로 향하여 입사하는 광선과 만드는 각도를 의미한다. 또한, 촬상부(53) 의 수광면 A3은, 카메라(41)의 초점거리를 f로 하면, 초점 f2로부터, Z축에 따라, f만큼 멀어진 원점 ○ 방향에 위치한다.
Z축에 대하여 앙각 Δd도로, 초점 f1로 향하여 입사하는 광선 r2는, 쌍곡면 H1에서 반사되고, 초점 f2로 향하고 있어, 수광면 A3에서 수광된다. Z축에 대하여 앙각 Δd도로, 초점 f1로 향하여 입사하는 광선 r3은, 쌍곡면 H1에서 반사되고, 초점 f2로 향하고 있어, 수광면 A3에서 수광된다. 앙각이 Δd도씩 커지는 광선 r4, r5, r6도, 마찬가지로 하여, 수광면 A3에서 수광된다.
이와 같이, 앙각이 Δd도씩 다른 광선 r1 내지 r6 각각이, 수광면 A3에서 수광되는 점끼리의 간격은, 도 19의 확대도에 나타내는 바와 같이, 등간격으로는 되지 않고, Z축에 가까운 점끼리의 간격만큼 좁아진다(Z축으로부터 멀어진 점끼리의 간격만큼 넓어짐). 즉, 앙각이 큰 광선끼리의 간격만큼 좁아진다(앙각이 작은 광선끼리의 간격만큼 넓어짐).
그리고, 앙각이 등각도의 광선에 대하여, 수광면 A3 상에서 수광되는 점끼리의 간격이, 전술한 바와 같이, 등간격으로 되지 않기 때문에, 전방위 화상데이터에는, 반경방향의 왜곡이 생긴다.
따라서, 전방위 화상데이터의 반경방향의 왜곡을 제거하기 위해서는, 앙각이 등각도인 광선의, 수광면 A3 상에서의 수광점끼리의 간격이, 등간격이 되도록 하면 된다.
그래서, 지금, 도 20에 나타내는 바와 같이, 피사체 상의 어떤 점 P(X, Y, Z)로부터, 초점 f1로 향하여, 앙각 α도로 입사하는 광선 r을 생각한다.
이 광선 r은, 도 19에서 설명한 경우와 마찬가지로, 집광부(52)로서의 쌍곡면 H1에서 반사되고, 초점 f2로 향하고 있어, 수광면 A3에서 수광된다.
이 경우에서, 초점 f2로 향하는 광선 r이, 초점 f2를 지나, XY 평면에, 평행한 평면과 만드는 각도를 γ도로 한다. 더구나, X축과 Y축으로 정의되는 2차원 직교좌표계에서, 광선 r이 수광면 A3에서 수광된 점(수광점) p의 좌표를 (x, y)로 나타내고, 그 점 p(x, y)와 Z축과의 거리를 R로 나타낸다.
도 20에서의 각도 α는, 식 (1)에서 표시되는 쌍곡면 H1에서, 광선 r이 반사되는 점의 좌표를 구함으로써, 다음식으로 나타낼 수 있다.
Figure 112004004287481-pct00005
식 (5)로부터, tanα는, 다음식으로 구할 수 있다.
Figure 112004004287481-pct00006
여기서, cosγ를, 다음식처럼 놓는다.
Figure 112004004287481-pct00007
식 (6)에, 식 (7)을 대입하면, 다음식을 구할 수 있다.
Figure 112004004287481-pct00008
식 (8)을 변형하여, 식 (9)를 얻을 수 있다.
Figure 112004004287481-pct00009
한편, A와 B를, 각각 식 (10)과 (11)에 나타내는 바와 같이 정의한다.
Figure 112004004287481-pct00010
Figure 112004004287481-pct00011
식 (9)에, 식 (10) 및 (11)을 대입함으로써, 식 (12)를 구할 수 있다.
Figure 112004004287481-pct00012
식 (12)는, 다음과 같은, X에 대한 2차 방정식으로 할 수 있다.
Figure 112004004287481-pct00013
식 (13)의 2차 방정식을 풀면, 다음식을 얻을 수 있다.
Figure 112004004287481-pct00014
따라서, 식 (7)으로부터, 각도 γ는, 다음식에 의해 구할 수 있다.
Figure 112004004287481-pct00015
단, 식 (15)에서, X는, 식 (14)로 정의되는 것으로, 또한, 식 (14) 중의 A와 B는, 각각, 식 (10)과 (11)로 정의되는 것이다.
또한, 도 20의 점 p의 좌표로부터, 각도 γ는, 다음식으로 구할 수 있다.
Figure 112004004287481-pct00016
한편, 도 20에서의 Z축과 점 p(x, y)와의 거리 R은, √(x2+y2)으로 표시되므로, 식 (16)은, 다음식과 같이 변형할 수 있다.
Figure 112004004287481-pct00017
이상으로부터, 식 (15)에 의해, 각도 γ를 구하고, 그 각도 γ를 사용하여, 식 (17)을 계산함으로써, Z축에 대하여 앙각 α도로, 초점 f1로 향하여 입사하는 광선 r이, 수광면 A3에서 수광되는 점 p(x, y)의 Z축으로부터의 거리 R을 산출할 수 있다.
따라서, Z축에 대한 앙각의 소정의 범위(예를 들면, 0도 내지 80도 등)를 등각도 Δd로 분할하고, 각 앙각 Δd, 2Δd, 3Δd, ···로 입사하는 광선이, 수광면 A3 상에서 수광되는 각 점 p1, p2, p3···에 대하여, Z축으로부터의 거리 Rp1, Rp2, Rp3···을 구해 놓고, 인접하는 점끼리의 거리의 차 │Rp1-Rp2│, │Rp2-Rp3│,···이, 일정값이 되도록, 카메라(41)가 출력하는 전방위 화상데이터를 변환함으로써, 그 반경방향의 왜곡을 제거한 전방위 화상데이터를 얻을 수 있게 된다.
이때, 이 왜곡 제거를 위한 전방위 화상데이터의 변환은, 도 7의 전방위 화상변환부(43)가 행한다.
즉, 전방위 화상변환부(43)는, 도 21에 나타내는 바와 같이, 카메라(41)로부터, 버퍼(42)를 통해, 전술한 반경방향의 왜곡이 있는 전방위 화상데이터와 동시에, 중심점 C1, 원주 F1의 원의 반경 rF1, 및 원주 F2의 원의 반경 rF2를 수신한다.
그리고, 전방위 화상변환부(43)는, 중심점 C1을 중심으로 하는 반경 rF1의 원의 원주 F1과, 중심점 C1을 중심으로 하는 반경 rF2의 원의 원주 F2로 둘러싸이는 영역 R1 내에서, 중심점 C1을 중심으로 하는, 전술한 Rp1, Rp2, Rp3···을 반경으로 하는 복수의 동심원을 그린다. 더구나, 전방위 화상변환부(43)는, 그 복수의 동심원의 원주를 등분하는, 중심점 C1을 지나는 복수의 직선을 그린다. 이에 따라, 전방위 화상변환부(43)는, 영역 R1에서, 복수의 동심원과, 복수의 직선으로 형성되는 다수의 교점을 얻는다.
여기서, 전술한 복수의 동심원과, 복수의 직선으로 형성되는 다수의 교점을, 이하, 적절히, 변환대상점이라 한다.
전술하였기 때문에, 변환대상점을, 그 인접하는 것끼리 등간격이 되도록 배치함으로써, 왜곡이 있는 전방위 화상데이터를, 그 왜곡을 제거한 화상데이터로 변환할 수 있다.
그래서, 지금, 도 21에서의, 도 17에 나타낸 것과 동일한 대략 부채꼴의 영역 R11의 화상데이터를, 왜곡이 없는 것으로 변환하는 것을 생각한다.
이 영역 R11 내에는, 도 22a에 나타내는 바와 같이, 중심점 C1을 중심으로 하는 복수의 동심원의 원호 F11, F12, F13, F14, F15, F16 각각과, 중심점 C1을 지나는 복수의 직선 L1, L2, L3, L4, L5, L6 각각과의 교점인 다수의 변환대상점이 존재한다.
전방위 화상변환부(43)는, 영역 R11 내에 존재하는 다수의 변환대상점을, 도 22b에 나타내는 바와 같이, 인접하는 것끼리 등간격이 되도록 배치한다.
즉, 전방위 화상변환부(43)는, 도 22a의 원호 F11, F12, F13, F14, F15, F16 각각에 대응하는, 등간격으로 배치된 횡방향의 직선 L21, L22, L23, L24, L25, L26과, 도 22a의 직선 L1, L2, L3, L4, L5, L6 각각에 대응하는, 등간격으로 배치된 종방향의 직선 L11, L12, L13, L14, L15, L16을 상정하고, 그 횡방향의 직선 L21 내지 L26 각각과, 종방향의 직선 L11 내지 L16 각각과의 교점 상에, 대응하는 변환대상점을 변환한다(할당함).
이에 따라, 예를 들면, 도 22a에서, 원호 F14와, 직선 L5와의 교점인 변환대상점 p11은, 도 22b의, 원호 F14에 대응하는 직선 L24와, 직선 L5에 대응하는 직선 L15와의 교점 p12로 변환된다.
이때, 카메라(41)를 둘러싸는, 표면이 거울인 구를 생각하면, 전방위 화상데이터에는, 그 구면 상에 비치는, 구의 외측의 경관이 표시된다. 따라서, 예를 들면, 지금, 그 카메라(41)를 둘러싸는 구를 지구로 보고 판단하면, 전방위 화상변환부(43)에서 얻어지는 화상데이터는, 그 종축과 횡축이, 각각 지구의 위도와 경도에 대응하는 것으로 되어 있다. 그래서, 본 실시예에서는, 전방위 화상변환부(43)가 출력하는, 왜곡이 제거된 전방위 화상데이터를, 위도경도 표현의 화상데이터라 부르고 있다.
그런데, 전방위 화상변환부(43)는, 전술한 바와 같이, 변환대상점의 위치를 변환(변경)함으로써, 반경방향의 왜곡을 갖는 화상데이터(전방위 화상데이터)를, 그 왜곡을 제거한 화상데이터(위도경도 표현의 화상데이터)로 변환하지만, 변환대상점은, 전술한 바와 같이, 중심점 C1을 중심으로 하는 원과, 중심점 C1을 지나는 직선과의 교점이다. 따라서, 변환대상점은, 촬상부(53)(도 12)의 수광면 A3(도 19,도 20)을 구성하는 화소의 화소 중심에 일치한다고는 한정하지 않고, 오히려, 일반적으로는, 일치하지 않는 것이 많다.
이와 같이, 변환대상점은, 화소 중심으로부터 어긋나 있는 것이 일반적이므로, 전방위 화상변환부(43)에서, 변환대상점의 위치를 변환하기 전에, 그 변환대상점에서의 화소값을 구할 필요가 있다.
그래서, 전방위 화상변환부(43)는, 변환대상점에서의 화소값을, 예를 들면, 다음과 같이 하여 구하게 되어 있다.
즉, 지금, 도 22a 및 도 22b의 변환대상점 p11이, 도 23에 나타내는 바와 같이, 수광면 A3 상의 인접하는 2×2의 4화소 P1, P2, P3, P4 각각의 화소 중심 CP1, CP2, CP3, CP4를 정점으로 하는 직사각형(정방형)의 범위 내에 있는 것으로 한다. 이때, 도 23의 실시예에서는, 상하, 또는 좌우방향에 인접하는 화소 중심끼리의 거리가 1로 하고 있다.
그리고, 변환대상점 p11이, 화소 중심 CP1보다도 거리 α만큼 우측방향의, 거리 β만큼 아래방향의 점인 경우, 전방위 화상변환부(43)는, 예를 들면, 다음식에서 구해지는 화소값 SS를, 변환대상점 p11의 화소값으로 한다.
Figure 112004004287481-pct00018
단, 식 (18)에서, Sa, Sb, Sc, Sd는, 화소 P1, P2, P3, P4 각각의 화소값을 나타낸다. 또한, 식 (18)에서, α 및 β는, 0 이상 1 이하의 범위의 값으로, 변환대상점 p11의 위치에 대응하는 것이다.
이때, 도 12의 실시예에서는, 집광부(52)를 쌍곡면 미러로 구성하도록 하였지만, 집광부(52)에는, 기타, 예를 들면, 구면미러 등을 채용하는 것도 가능하다.
또한, 도 7의 실시예에서는, 카메라(41)로서, 전방위 화상데이터를 촬상할 수 있는 전방위 카메라를 채용하였지만, 카메라(41)로서는, 기타, 예를 들면, 어안렌즈를 장착한 비디오 카메라나, 일반적인(통상의) 렌즈인 비디오 카메라 등을 채용하는 것도 가능하다.
여기서, 일반적인 렌즈의 비디오 카메라에서는, 그 비디오 카메라의 광축과 직교하고, 그 중심이 광축 상에 있는 직사각형 형상의 평면으로서, 또한 비디오 카메라의 렌즈중심과 피사체와의 사이에 있는 평면을, 가상적인 스크린인 가상스크린이라고 하면, 피사체 상의 각 점으로부터 렌즈 중심에 입사하는 광선이 가상스크린 상에 형성하는 화상데이터가 촬상된다. 그리고, 그 때, 가상스크린에 입사하는 광 선은, 이상적으로는, 아무런 변환도 되지 않기 때문에, 2차원 평면인 가상스크린에는, 3차원 공간인 현실세계의 상황이, 말하자면 충실히 투영해낸다.
그렇지만, 전방위 카메라나 어안렌즈를 장착한 비디오 카메라로서는, 전방위나 광각(wide angle)의 촬상이 가능하지만, 가상스크린에 입사하는 광선이, 말하자면 비선형인 변환을 받기 때문에, 즉, 예를 들면, 전방위 카메라에 대하여 말하면, 도 19에 도시한 바와 같이, 광선이, 쌍곡면 미러(를 나타내는 쌍곡면 H1)에서 반사되기 때문에, 가상스크린에는, 현실세계의 상황이 비뚤어진 형태로 투영된 전방위 화상데이터가 형성된다.
그 때문에, 도 7의 전방위 화상변환부(43)에서는, 그와 같은 비뚤어진 전방위 화상데이터가, 일반적인 렌즈의 카메라로 촬상한 경우와 동일한 위도경도 표현의 화상데이터로 변환되지만, 지금, 이 위도경도 표현의 화상데이터를, 일반적인 렌즈의 카메라로 촬상한 것으로 하면, 이 위도경도 표현의 화상데이터에는, 전방위 카메라의 광축을 중심으로 하는 모든 경도방향이 표시되어 있기 때문에, 일반적인 렌즈의 카메라에 대한 가상스크린은, 좌우방향(경도방향)에 무한의 길이를 갖게 된다.
또한, 전방위 카메라에서는, 위도방향에 대해서는, 이상적으로는, 0도로부터 -90도의 방향(도 19에서, XY 평면으로부터 하측의 임의의 점으로부터 원점으로 향하는 방향)이 촬상되기 때문에, 위도경도 표현의 화상데이터를, 일반적인 렌즈의 카메라로 촬상한 것으로 한 경우에는, 그 가상스크린은, 아래 방향(마이너스인 위도방향)으로 무한한 길이를 갖게 된다.
그런데, 전방위 카메라에 있어서 촬상된 전방위 화상데이터를 변환한 위도경도 표현의 화상데이터는, 도 2의 화상표시장치에서 화상을 표시하는데 있어서, 그 전부를 필요로 하지 않는다. 즉, 도 2의 화상표시장치에서 화상을 표시하는데 있어서는, 위도경도 표현의 화상데이터 중, 주목하고 있는 피사체가 비치고 있는 부분을 포함하는 어느 정도의 범위의 화상데이터가 있으면, 기본적으로는, 충분하다.
그래서, 이하에 있어서는, 일반적인 렌즈의 카메라로 피사체를 촬상한 경우에, 그 가상스크린에 비치는 범위의 화상데이터를, 위도경도 표현의 화상데이터로부터 적출하고, 그 적출된 화상데이터를 대상으로 처리가 행해지는 것으로 한다. 여기서, 이 적출은, 예를 들면, 도 7의 전방위 화상변환부(43)에 행하게 하는 것이 가능하다.
더구나, 이하에 있어서는, 카메라(41)의 광축이나 렌즈중심이라 할 때에는, 카메라(41)가 일반적인 렌즈의 카메라라고 하여, 그 일반적인 렌즈의 카메라의 광축이나 렌즈중심을 의미하는 것으로 한다. 따라서, 전술한 바와 같이, 위도경도 표현의 화상데이터로부터 적출된 화상데이터에 대해서는, 그 화상데이터를, 일반적인 렌즈의 카메라로 촬상하였다고 가정한 경우의, 그 카메라의 광축이나 렌즈중심이, 카메라(41)의 광축이나 렌즈중심이 된다.
다음에, 도 5의 화상처리장치에 의하면, 데이터 변환부(30)에서, 화상데이터 베이스(2)에 기억된 화상데이터가 변환되는 것에 의해, 도 4a 내지 도 4c에서 설명한 바와 같이, 사용자의 시점에서 본 화상데이터, 즉, 현실세계에서 사용자가 볼 수 있는 피사체가 표시된 화상데이터가, 디스플레이(6)에 표시된다.
이와 같이, 데이터 변환부(30)에서, 현실세계에서 사용자가 볼 수 있는 피사체가 표시된 화상데이터를 얻을 수 있는 것은, 다음 원리에 의한다.
즉, 화상데이터 베이스(2)에는, 도 7의 화상생성장치가 출력하는, 복수의 시점(카메라(41)의 시점)에서 촬상된 위도경도 표현의 원화상데이터가 기억되어 있다. 이것은, 도 24에 나타내는 바와 같이, 어떤 곡면 Ω 상의 복수의 점을 시점으로서, 피사체를 촬상한 화상데이터가, 화상데이터 베이스(2)에 기억되어 있다고 볼 수 있다.
지금, 곡면 Ω의, 피사체와 반대측의 어떤 위치에 시점 P를 설정하고, 그 시점 P에서 피사체를 본 경우의 시각에 비치는 화상을 생각해 본다.
이때, 시점 P는, 그 시점 P와, 피사체 상의 임의의 점을 연결하는 직선이, 곡면 Ω과 교차하는 위치로 잡는 것으로 한다.
또한, 여기서는, 설명을 간단히 하기 위해, 곡면 Ω 상의 임의의 점을 시점으로서, 피사체를 촬상한 화상데이터가, 화상데이터 베이스(2)에 기억되어 있는 것으로 함과 동시에, 사용자가 피사체를 관측하고자 하는 공간(매질) 내에서, 광선은 직진하여, 감쇠하지 않은 것으로 한다.
시점 P에서 피사체를 보았을 때의 광선의 궤적(피사체로부터 시점 P에 입사하는 광선의 궤적)은, 시점 P와 피사체 상의 각 점을 연결하는 직선에 의해 표현할 수 있다. 이 광선은, 반드시, 곡면 Ω과 교차하기 때문에, 그 광선과 일치하는 궤적의 광선에 대응하는 화소값(시점 P에서 피사체를 본 경우의 광선정보와 동일한 광선정보)이, 화상데이터 베이스(2)에는, 반드시 존재한다.
즉, 지금, 시점 P와 피사체 상의 어떤 점 Ri를 연결하는 직선 Li에 주목하여, 그 직선 Li와 곡면 Ω과의 교점을 Qi로 나타낸다. 지금의 경우, 곡면 Ω 상의 임의의 점을 시점으로서, 피사체를 촬상한 화상데이터가, 화상데이터 베이스(2)에 기억되어 있기 때문에, 점 Qi를 시점으로서 피사체를 촬상한 화상데이터는, 화상데이터 베이스(2)에 기억되어 있다. 더구나, 지금의 경우, 광선은 직진하고, 동시에 감쇄하지 않기 때문에, 피사체 상의 점 Ri로부터, 곡면 Ω 상의 점 Qi에 입사하는 광선과, 시점 P에 입사하는 광선과는, 동일하다. 따라서, 시점 P에서 피사체를 본 경우, 그 피사체 상의 점 Ri로부터 시점 P로 향하는 광선에 대응하는 화소값은, 피사체 상의 점 R로부터 곡면 Ω 상의 점 Qi로 향하는 광선에 대응하는 화소값에 일치하고, 이 점 Ri로부터 점 Qi로 향하는 광선에 대응하는 화소값은, 화상데이터 베이스(2)에 기억되어 있다.
이상으로부터, 시점 P로부터, 피사체 상의 점 Ri를 보았을 때의 화소값은, 곡면 Ω 상의 점 Qi를 시점으로서 촬상된 화상데이터로부터 얻을 수 있다.
시점 P로부터, 피사체 상의 다른 점을 보았을 때의 화소값도, 마찬가지로, 곡면 Ω상의 점을 시점으로서 촬상된 화상데이터로부터 얻을 수 있기 때문에, 결과로서, 곡면 Ω 상의 임의의 점을 시점으로서 촬상된 화상데이터가 존재하면, 그 화상데이터를 구성하는 화소의 화소값으로부터, 시점 P와 피사체를 연결하는 광선정보와 동일한 광선정보의 광선에 대응하는 화소값을 선택함으로써, 시점 P에서 피사 체를 본 화상데이터를 얻을 수 있게 된다.
여기서, 도 24에 나타낸 곡면 Ω의 형상은, 특히 한정되는 것은 아니며, 임의의 형상의 것을 채용할 수 있다. 따라서, 곡면 Ω은, 도 25에 나타내는 바와 같이, 평면이어도 상관없다.
또한, 곡면 Ω는, 개곡면이어도, 폐곡면이어도 상관없다. 단, 곡면 Ω이 개곡면인 경우에는, 시점 P는, 전술한 바와 같이, 그 시점 P와, 피사체 상의 임의의 점을 연결하는 직선이, 곡면 Ω과 교차하는 위치로 잡을 필요가 있다.
더구나, 곡면 Ω이, 피사체를 둘러싸는 폐곡면인 경우에는, 전술한 원리로부터, 다음 것을 말할 수 가 있다.
즉, 피사체를 둘러싸는 폐곡면 상의 모든 점에서, 모든 방향의 광선의 광선정보(광선의 궤적과 그 광선에 대응하는 화소값)가 얻어져 있는 경우에는, 그 폐곡면의 외측의 임의의 위치에서 본 화상을 재구성할 수 있다.
이때, 전술한 경우에는, 곡면 Ω 상의 임의의 점을 시점으로서, 피사체를 촬상한 화상데이터가 얻어져 있는 것으로 하였지만, 피사체를 촬상할 때의 시점은, 곡면 Ω 상에 없는 점이어도 상관없다. 즉, 예를 들면, 곡면 Ω이, 피사체를 둘러싸는 폐곡면이라고 한 경우, 그 폐곡면의 외측의 임의의 위치에서 본 화상을 재구성하기 위해서는, 원리적으로는, 폐곡면 상의 임의의 점에서, 모든 방향의 광선정보가 존재하면 되며, 그 광선정보는, 폐곡면 상의 점을 시점으로서 촬상된 화상인 것이어도, 또한, 폐곡면 상의 점 이외의 점을 시점으로서 촬상된 화상인 것이어도 된다. 이 것은, 곡면 Ω이 개곡면이어도 마찬가지이다.
도 5의 데이터 변환부(30)는, 전술한 바와 같이, 화상데이터 베이스(2)에 기억된 원화상데이터를 촬상하였을 때의, 소정의 곡면 Ω을 지나는 광선정보 중, 사용자의 시점으로 향하는 광선정보를 사용하여, 제시용 화상데이터(사용자의 시점에서 본 화상데이터)를 재구성함으로써, 원화상데이터를 제시용 화상데이터로 변환한다.
즉, 도 5의 데이터 변환부(30)는, 사용자의 시점에서 본 화상이 표시되는 가상적인 스크린(가상스크린)을, 사용자의 시점과 피사체와의 사이에 설정하고, 사용자의 시점과, 가상스크린의 화소를 연결하는 직선과 동일궤적의 광선을 검출한다. 더구나, 데이터 변환부(30)는, 검출한 광선에 대응하는 화소값을, 가상스크린의 화소의 화소값으로 하고, 이상의 처리를, 가상스크린 상의 모든 화소값에 대하여 행함으로써, 가상스크린 상에, 사용자의 시점에서 본 화상데이터(제시용 화상데이터)를 재구성한다.
따라서, 예를 들면, 지금, 피사체를 둘러싸는 폐곡면의 외측의 임의의 위치를 시점으로 한 제시용 화상데이터를 재구성한다고 한 경우에는, 그 폐곡면 상의 모든 점에서의, 모든 방향의 광선정보가 있으면 된다. 이때, 이론상은, 폐곡면 상의 점도, 그 점에서의 방향도 무한히 존재하기 때문에, 실제로는, 폐곡면 상의 점도, 그 점에서의 방향도 유한개로 제한되게 된다.
그런데, 폐곡면 상의 모든 점에서의, 모든 방향의 광선정보를 사용하여, 그 폐곡면의 외측의 임의의 위치를 시점으로 한 제시용 화상데이터를 재구성하는 경우, 시점이 폐곡면 상에 있는 경우에는, 그 시점과 일치하는 폐곡면 상의 점을 지 나는 광선의 광선정보를, 그대로 사용하여, 제시용 화상데이터를 재구성할 수 있다.
그렇지만, 시점이 폐곡면 상에 없는 경우에는, 그 시점과, 그 시점에 대하여 설정된 가상스크린 상의 화소를 연결하는 직선이, 폐곡면과 교차하는 점을, 가상스크린 상의 모든 화소에 대하여 구할 필요가 있어, 이 경우, 예를 들면, 화상처리장치로서의 컴퓨터(1)(도 3)를 구성하는 CPU(12)의 성능 등에 따라서는, 제시용 화상데이터를 실시간으로 표시하는 것이 곤란하게 되는 경우가 있다.
그래서, 데이터 변환부(30)는, 화상데이터 변환부(31)에서, 화상데이터 베이스(2)에 기억된 원화상데이터를, 그 화소에 입사한 광선에 대응하는 화소값으로 이루어지는 소정의 포맷의 화상데이터인 중간데이터로 변환해 놓고, 중간데이터 변환부(32)에서, 그 중간데이터를, 사용자의 시점에서 본 제시용 화상데이터로 변환하도록 함으로써, 제시용 화상데이터를 실시간으로 표시하는 것을 가능하게 하고 있다.
즉, 화상데이터 변환부(31)는, 원화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 원화상데이터의 소정의 화소의 화소값으로 한 화상데이터를, 중간데이터로서 생성한다.
따라서, 곡면 Ω으로서, 예를 들면, 도 26에 나타내는 바와 같이, 폐곡면으로서의 구면을 생각하고, 그 구면 상의 어떤 점 Q에서의, 어떤 방향의 광선에 주목한 경우, 화상데이터 변환부(31)에서는, 그 주목광선에 대하여, 소정의 점으로서 의, 예를 들면, 원점을 지나, 주목광선과 직교하는 평면 α 상에서, 주목광선이 지나는 점 Px가, 화소로 되고, 더구나, 그 화소값이, 주목광선에 대응하는 화소값으로 설정된다. 화상데이터 변환부(31)에서는, 구면 상의 점 Q 이외의 점에서의, 동일방향의 광선에 대해서도 마찬가지로 하여, 평면 α 상에 화소와 그 화소값이 설정되고, 이에 따라, 평면 α 상에는, 동일방향의 광선에 대응하는 화소값으로 이루어지는 화상데이터가 형성된다.
여기서, 지금, 도 26에서, 구면의 중심을 원점으로 하는 3차원 좌표계를 생각함과 동시에, 구면 상의 점 Q에서의, 어떤 방향의 광선과 동일방향의, 원점을 지나는 벡터를, 벡터 v로 나타낸다. 더구나, 벡터 v를, 3차원 좌표계에서의 xy 평면에 사영하여 얻어지는 벡터를, 벡터 v'로 나타냄과 동시에, 벡터 v와 v'가 만드는 각도 θ를 위도로, x축과 벡터 v'가 만드는 각도 φ를 경도로, 각각 말하는 것으로 한다. 벡터 v의 방향은, 이 위도 θ와 경도 φ로 규정된다.
상술한 평면 α에는, 벡터 v와 동일방향의 광선에 대응하는 위치의 화소값으로 이루어지는 화상데이터가 형성되지만, 이 평면 α 상에 형성되는 화상데이터는, 벡터 v의 방향의 무한원을 시점으로서 본 경우의 화상데이터가 된다.
화상데이터 변환부(31)는, 각 값의 위도 θ와 경도 φ에 의해 규정되는 방향의 벡터 v와 직교하고, 원점을 지나는 평면에 대하여, 동일한 화상데이터를 구성하고, 중간데이터로서 출력한다.
다음에, 도 27의 흐름도와, 도 28을 참조하여, 도 5의 화상데이터 변환부(31)가, 도 6의 스텝 S1에서 행하는 화상데이터 변환처리, 즉, 원화상데이터 를 중간데이터로 변환하는 처리에 대하여 설명한다.
우선 처음에, 스텝 S21에서, 화상데이터 변환부(31)는, 화상데이터 베이스(2)에 기억된 원화상데이터를 촬상하였을 때의 카메라(41)의 시점(이하, 적절히, 촬상포인트라고도 함)에서, 주목촬상 포인트 Pc로 하는 것을 선택한다.
즉, 도 7에서 설명한 화상생성장치에서는, 카메라(41)를 고정하고, 피사체를 이동하면서, 원화상데이터의 촬상이 행해지지만, 이것은, 상대적으로는, 피사체를 고정하고, 카메라(41)를 이동하면서, 원화상데이터의 촬상이 행해지고 있는 것과 등가이다. 즉, 원화상데이터는, 카메라(41)의 시점(촬상포인트)을 변경하면서, 피사체의 촬상을 행한 것으로, 다수의 촬상포인트가 존재한다. 스텝 S21에서는, 그 다수의 촬상포인트 중에서, 아직 주목촬상 포인트로 하고 있지 않은 임의의 촬상포인트가, 주목촬상 포인트 Pc로서 선택된다.
여기서, 화상데이터 베이스(2)에는, 전술한 바와 같이, 원화상데이터의 각 프레임과 동시에, 그 원화상데이터를 촬상하였을 때의, 피사체의 위치, 및 카메라(41)의 위치 및 광축방향을 나타내는 정보도 기억된다. 화상데이터 변환부(31)는, 이들 정보에 근거하여, 각 프레임의 원화상데이터에 대하여, 예를 들면, 촬상시 좌표계에서의, 피사체의 위치(자세를 포함함)를 고정한 경우의 카메라(41)의 위치로서의 촬상포인트를 구하고, 그 중에서, 아직 주목촬상 포인트로 하고 있지 않은 촬상포인트를, 주목촬상 포인트 Pc로서 선택한다.
그 후, 스텝 S22로 진행하고, 화상데이터 변환부(31)는, 주목촬상 포인트 Pc 에 대하여, 가상스크린을 설정하고, 가상스크린 상의 화소 중, 아직 주목화소로서 선택하고 있지 않은 화소를, 주목화소 Ps로서 선택한다.
즉, 화상데이터 변환부(31)는, 도 28에 나타내는 바와 같이, 주목촬상 포인트 Pc에 대하여, 그 주목촬상 포인트로부터, 카메라(41)의 광축방향으로 향하여, 소정의 거리 L만큼 멀어진 위치에, 카메라(41)의 광축과 직교하는 직사각형 형상의 평면을, 가상스크린으로서 설정한다. 그리고, 화상데이터 변환부(31)는, 가상스크린 상의 화소 중, 예를 들면, 레이저 스캔 순으로, 아직 주목화소로 하고 있지 않은 화소를, 주목화소 Ps로서 선택한다.
여기서, 화상데이터 변환부(31)에서는, 주목촬상 포인트에서의 카메라(41)의 광축방향은, 화상데이터 베이스(2)에 기억되어 있는 정보로부터 인식된다.
또한, 가상스크린의 횡과 종의 화소수는, 주목촬상 포인트 Pc로부터 촬상된 원화상데이터의 프레임의 횡과 종의 화소수에 각각 일치하고, 가상스크린 상에는 주목촬상 포인트 Pc로부터 촬상된 원화상데이터가 표시되어 있는 것으로 생각한다.
스텝 S22의 처리 후에는, 스텝 S23으로 진행하고, 화상데이터 변환부(31)는, 주목화소 Ps를 시점으로 하고, 주목촬상 포인트 Pc를 종점으로 하는 벡터 v를 구하여, 스텝 S24로 진행한다.
여기서, 도 28의 실시예에서는, 벡터 v는, 촬상시 좌표계에서, xz 평면 내의 벡터로서, xy 평면으로부터 z축방향으로 각도 θ의 방향을 갖게 되어 있다. 즉, 도 28의 실시예에서는, 벡터 v는, 위도가 θ로, 경도가 0도인 방향의 벡터로 되어 있다.
또한, 도 28의 실시예에서는, 주목촬상 포인트 Pc에서의 카메라(41)의 광축이, 촬상시 좌표계의 원점을 지나게 되어 있지만, 카메라(41)의 광축은, 반드시, 촬상시 좌표계의 원점을 지날 필요는 없다.
더구나, 도 28에서는, 피사체를 둘러싸는 곡면 Ω으로서, 폐곡면인, 원점을 중심으로 하는 구면을 나타내고 있다.
스텝 S24에서는, 화상데이터 변환부(31)는, 벡터 v와 직교하고, 촬상시 좌표계 상의 소정의 점으로서의, 예를 들면 원점을 지나는 평면 α를 구하고, 스텝 S25로 진행한다.
여기서, 평면 α는, 반드시, 원점을 지날 필요는 없다.
스텝 S25에서는, 화상데이터 변환부(31)는, 스텝 S23에서 구한 벡터 v의 위도 θ 및 경도 φ를 구하고, 즉, 벡터 v와 xy 평면이 만드는 각도인 위도 θ, 및 벡터 v와 xz 평면이 만드는 각도인 경도 φ를 구하고, 스텝 S26으로 진행한다.
여기서, 벡터 v의 위도 θ및 경도 φ는, 스텝 S24에서 구해진 평면 α의 법선방향의 위도 θ 및 경도 φ라 할 수 있다. 따라서, 소정의 점으로서의 원점을 지나는 평면 α는, 그 위도 θ와 경도 φ에 의해 특정할 수 있으므로, 이 위도 θ와 경도 φ에 의해 특정되는 평면 α를, 이하, 적절히, 평면 I(θ, φ)라고도 기술한다.
이때, 위도 θ의 부호에 대해서는, z축의 양측과 음측을, 각각 양 또는 음으 로 한다. 또한, 경도 φ의 부호에 대해서도, y축의 양측과 음측을, 각각 양 또는 음으로 한다.
스텝 S26에서는, 화상데이터 변환부(31)는, 도 28에 나타내는 바와 같이, 주목촬상 포인트 Pc와 주목화소 Ps를 연결하는 직선 Lp를 구한다. 더구나, 스텝 S26에서는, 화상데이터 변환부(31)는, 직선 Lp와, 스텝 S24에서 구한 평면 α(I(θ, φ))와의 교점 Px를 구하여, 스텝 S27로 진행하고, 그 점 Px의, 평면 α 상에서의 좌표 (xα, yα)를 구한다.
여기서, 평면 α 상에서의 점 Px의 좌표 (xα, yα)는, 다음과 같이 하여 구할 수 있다.
즉, 지금, 평면 α상에, 2차원 좌표계를 생각하고, 그 x축방향과 y축방향의, 촬상시 좌표계에서의 단위벡터를, 각각 vx와 vy로 나타낸다.
이 경우, 점 Px의 x 좌표 xα와 y 좌표 yα는, 각각, vx·OP s(또는 vx·OPc)와, vy·OPs(또는 vy·OPc)를 계산함으로써 구할 수 있다. 단, ·는, 내적을 나타내고, OPs(OPc)는, 촬상시 좌표계의 원점을 시점으로 하여, 주목화소 Ps(주목촬상 포인트 Pc)를 종점으로 하는 벡터를 나타낸다.
이때, 단위벡터 vx는, 예를 들면, 식 vx·v=0을 만족하고, 동시에 식 vx·Z v= 0을 만족하고, 길이가 1의 벡터이다. 또한, 단위벡터 vy는, 예를 들면, 식 vy­ v= 0을 채워, 동시에 식 vy·vx=0을 만족하는, 길이가 1인 벡터이다. 단, 벡터 Zv 는, 촬상시 좌표계에서의 z축방향의 단위벡터(=(0, 0, 1))를 나타낸다.
여기서, 주목촬상 포인트 Pc에서의 카메라(41)의 광축이, 촬상시 좌표계의 원점을 지나지 않는 경우는, 예를 들면, 그 광축과 평면 α와의 교점의, 평면 α 상의 2차원 좌표계의 좌표인 만큼만, 점 Px의 좌표 (xα, yα)를 오프셋할 필요가 있다.
즉, 전술한 바와 같이 하여, 평면 α 상에서의 점 Px의 좌표 (xα, yα)를 구한 경우, 그 점 Px의 좌표 (xα, yα)는, 주목촬상 포인트 Pc로부터의 카메라(41)의 광축과 평면 α와의 교점을 원점으로 하는 것으로, 이 때문에, 광축이 평면 α와 교차하는 점이 다른 촬상포인트를 지나는 동일방향의 광선에 대해서는, 동일평면 α상에, 원점이 다른 위치에 있는 2차원 좌표계가 정의되어 버리게 된다.
그래서, 여기서는, 동일평면 α 상에 정의되는 2차원 좌표계의 원점을, 소정의 점으로서의, 예를 들면, 촬상시 좌표계의 원점에 고정하기 위해, 주목촬상 포인트 Pc로부터의 카메라(41)의 광축이, 촬상시 좌표계의 원점을 지나지 않는 경우는, 화상데이터 변환부(31)는, 스텝 S27에서, 그 광축과 평면 α와의 교점의, 평면 α 상의 2차원 좌표계의 좌표만큼만, 점 Px의 좌표를 오프셋한다.
구체적으로는, 화상데이터 변환부(31)는, 전술한 바와 같이 하여 구해진 점 Px의 좌표를, (xα', yα')로 나타냄과 동시에, 주목촬상 포인트 Pc 로부터의 카메라(41)의 광축과 평면 α와의 교점의, 평면 α 상의 2차원 좌표계의 좌표를, (xα0, yα0)과 나타내면, 좌표 (xα', yα')와 (xα0 , yα0)를 가산한 좌표 (xα'+xα0, yα'+yα0)를, 평면 α 상에서의 점 Px의 좌표 (xα, yα )로서, 최종적으로 구한다.
그 후, 스텝 S28로 진행하고, 화상데이터 변환부(31)는, 가상스크린 상의 원화상데이터를 구성하는 화소 중의 주목화소 Ps의 화소값을, 평면 α 상의 점 Px의 위치의 화소의 화소값으로 한다. 즉, 지금, 평면 α 상의 점 Px의 위치의 화소의 화소값을, 평면 α를 나타내는 I(θ, φ)와, 평면 α 상의 점 Px의 좌표를 나타내는 (xα, yα)에 따라, I(θ, φ)(xα, yα)로 나타내는 것으로 하면, 스텝 S28에서, 화상데이터 변환부(31)는, 평면 α 상의 점 Px의 위치의 화소의 화소값 I(θ, φ)(xα, yα)에, 주목화소 Ps의 화소값을 설정한다. 이에 따라, 주목화소 P s는, 벡터 v와 직교하는 평면 I(θ, φ)에 정사영되어, 그 정사영된 평면 I(θ, φ)의 점 Px(=(xα, yα))의 위치의 화소의 화소값 I(θ, φ)(xα, yα)로서, 주목화소 Ps의 화소값이 설정된다. 여기서, 이 주목화소 Ps를 평면 I(θ, φ)에 정사영한 화소 Px의 화소값 I(θ, φ)(xα, yα)가, 중간데이터이다.
그리고, 스텝 S29로 진행하고, 화상데이터 변환부(31)는, 주목촬상 포인트 Pc에 대하여 설정된 가상스크린 상의(원화상데이터를 구성함) 모든 화소를 주목화소로 했는지 어떤지를 판정하고, 아직, 주목화소로 하고 있지 않은 것이 있다고 판정 된 경우, 스텝 S22로 되돌아가, 이하와 같은 처리가 반복된다.
또한, 스텝 S29에서, 가상스크린 상의 모든 화소를 주목화소로 하였다고 판정된 경우, 스텝 S30으로 진행하고, 화상데이터 변환부(31)는, 화상데이터 베이스(2)에 기억된 원화상데이터의 모든 프레임의 촬상포인트를, 주목촬상 포인트로 했는지 어떤지를 판정한다.
스텝 S30에서, 화상데이터 베이스(2)에 기억된 원화상데이터의 각 프레임의 촬상포인트 중, 아직, 주목촬상 포인트로 하고 있지 않은 것이 있다고 판정된 경우, 스텝 S21로 되돌아가, 이하와 같은 처리가 반복된다.
또한, 스텝 S30에서, 화상데이터 베이스(2)에 기억된 원화상데이터의 각 프레임의 촬상포인트 전부를, 주목촬상 포인트로 하였다고 판정된 경우, 처리를 종료한다.
이상의 화상데이터 변환처리에 의해, 이상적으로는, 각 값의 위도 θ와 경도 φ로 정의되는 평면 I(θ, φ) 상에, 그 위도 θ와 경도 φ로 규정되는 방향의 무한원으로부터 피사체를 본 경우의 화상데이터가 생성되고, 이 화상데이터가, 중간데이터로서, 중간데이터 베이스(3)에 공급되어 기억된다.
도 29a 및 도 29b는, 도 27의 화상데이터 변환처리에 의해 생성되는 중간데이터의 포맷을 모식적으로 나타내고 있다.
도 27의 화상데이터 변환처리에 의해 생성되는 중간데이터는, 평면 I(θ, φ) 상에, 그 위도 θ와 경도 φ로 규정되는 방향의 무한원으로부터 본 피사체를 비춘 화상데이터로 되어 있고, 따라서, 각 값의 위도 θ및 경도 φ 마다 존재하므 로, 도 29a에 나타내는 바와 같은, 위도 θ와 경도 φ의 값으로 구분되는 테이블(이하, 적절히, 위도경도 테이블이라 함)로 표현할 수 있다.
여기서, 도 29a의 실시예에서는, 위도 θ가 -90도로부터 90도의 범위의 1도의 스텝으로, 경도 φ가 -180 내지 179도의 범위의 1도의 스텝으로, 각각 변화하는 평면 I(θ, φ)마다, 각 위도 θ와 각 경도 φ로 규정되는 방향의 무한원으로부터 피사체를 본 경우의 화상데이터가, 위도경도 테이블의 각 셀에 등록되어 있다. 이때, 위도 θ나 경도 φ를, 몇도 스텝으로 하는지는, 특히 한정되는 것은 아니다. 또한, 위도 θ나 경도 φ의 스텝 폭은, 일정해도 되며, 가변이어도 된다. 더구나, 전술한 바와 같이, 위도 θ와 경도 φ가 정수값만을 취득하는 경우에는, 도 27의 화상데이터 변환처리에서 위도 θ와 경도 φ를 구하는 연산을 행하는데 있어, 소수점 이하는, 예를 들면, 절상, 떼어버림, 또는 사사 오입된다.
도 29a의 위도경도 테이블의 각 셀에는, 그 셀에 대응하는 위도 θ와 경도 φ로 규정되는 방향의 무한으로부터 피사체를 본 경우의 화상데이터, 즉, 평면 I(θ, φ) 상에 정사영된 원화상데이터의 화소의 화소값이, 그 평면 I(θ, φ) 상에 정의된 2차원 좌표계의 각 x 좌표 xα와 각 y 좌표 yα마다 등록되어 있다. 즉, 도 29a의 위도경도 테이블의 각 셀에는, 예를 들면, 도 29b에 나타내는 바와 같이, 평면 I(θ, φ) 상에 정의된 2차원 좌표계의 x 좌표 xα와 y 좌표 yα의 값으로 구분된 테이블(이하, 적절히, 화소값 테이블이라 함)이 등록되어 있고, 그 화소값 테이블의 셀에는, 그 셀에 대응하는 x 좌표 xα와 y 좌표 yα로 규정되는 점에 정사영된 원 화상데이터의 화소의, 화소값 p(xα, yα)가 등록되어 있다.
이때, 도 29b에서, x1과 y1은, 원화상데이터의 화소를 평면 I(θ, φ) 상에 정사영한 점의, 최소의 x 좌표와 y 좌표를, 각각 나타낸다. 또한, x2와 y2는, 원화상데이터의 화소를 평면 I(θ, φ) 상에 정사영한 점의, 최대의 x 좌표와 y 좌표를, 각각 나타낸다. 더구나, 도 29b에서는, x 좌표 및 y 좌표가 1스텝으로 되어 있지만, 이 스텝 폭도, 위도 θ및 경도 φ의 스텝 폭과 마찬가지로, 특히 한정되는 것은 아니다.
여기서, 도 30에, 도 29a의 위도경도 테이블의 각 셀에 등록되어 있다, 무한원으로부터 피사체를 본 경우의 화상데이터의 모식도를 나타낸다. 이때, 도 30의 실시예에서는, 피사체가, 과일이 들어가 있는 바구니로 되어 있다.
도 29a의 위도경도 테이블의 각 셀에 등록되어 있다, 무한원으로부터 본 경우의 화상데이터는, 무한원에 위치하는 카메라로 촬영된 화상데이터 그것과 동일한 성질을 가지고 있고, 따라서, 카메라로 촬영된 화상데이터에 대하여, 그 성질(예를 들면, 상관성 등)을 이용하여 시행되는 화상처리(예를 들면, 에지 강조나 노이즈 제거 등)와 동일한 화상처리를 시행할 수 있다.
그런데, 도 29a의 위도경도 테이블의 각 셀에 등록되어 있는 화소값 테이블(도 29b)에서의 화소값으로 이루어지는 화상데이터는, 그 셀에 대응하는 위도 θ와 경도 φ로 규정되는 평면 I(θ, φ) 상에 정사영된 원화상데이터의 화소의 화소값으로 이루어지기 때문에, 화상데이터 베이스(2)에 기억되는 원화상데이터에 따라서 는, 화소값이 존재하지 않는 경우가 있다.
즉, 평면 I(θ, φ) 상에 원화상데이터의 화소가 정사영되는 범위(이하, 적절히, 유효범위라 함)는, 도 29b에 나타낸 바와 같이, x 좌표가 x1 내지 x2로, y 좌표가 y1 내지 y2로 규정되는 범위이다. 그리고, 이 범위에서의 화소값이, 화소값 테이블에 등록되어 있다. 그렇지만, 평면 I(θ, φ)의 모든 점(예를 들면, x 좌표가 x1 내지 x2의 범위의 정수값으로, y 좌표가 y1 내지 y2의 범위의 정수값으로, 각각 나타내는 모든 점)에, 원화상데이터의 화소가 정사영된다고는 한정하지 않고, 정사영되는 원화상데이터의 화소가 존재하지 않는 경우가 있을 수 있다.
따라서, 평면 I(θ, φ)의 유효범위 내의 화소에 있어서, 화소값이 존재하지 않는 경우가 있고, 이 경우, 그 유효범위의 화상데이터, 즉, 평면 I(θ, φ)에 대응하는 화소값 테이블(도 29b)에서의 화소값으로 이루어지는 화상데이터는, 예를 들면, 도 31a에 나타내는 바와 같이, 그 일부의 화소의 화소값이 결락한 것으로 된다.
여기서, 도 31a의 실시예에서는, 검정색으로 나타내는 줄무늬 모양에, 화소값이 결락되어 있다.
이와 같이, 평면 I(θ, φ)의 유효범위, 요컨대 화소값 테이블에, 화소값의 결락이 생기고 있는 경우에는, 그 화소값을 보간하는 화소값 보간처리를 행한다. 이 화소값 보간처리에 의해, 도 31a에 나타낸 화소값이 결락되어 있는 화소값 테이블(에 등록된 화소값으로 이루어지는 화상)을, 도 31b에 나타내는 바와 같은, 화소 값의 결락이 없는 화소값 테이블로 변환할 수 있다.
화소값 테이블에 대한 화소값 보간처리는, 예를 들면, 다음과 같이 하여 행하는 것이 가능하다.
즉, 예를 들면, 지금, 평면 I(θ, φ)의 유효범위의 어떤 점 (xα, yα)에서의 화소값 I(θ, φ)(xα, yα)가 결락되어 있는 경우에 있어서, 위도 또는 경도가 조금 어긋난 평면 I(θ', φ')의 유효범위의, 점 (xα, yα)과 동일좌표의 점에서의 화소값 I(θ', φ')(xα, yα)가 존재할 때에는, 결락되어 있는 화소값 I(θ, φ)(xα, yα)는, 평면 I(θ', φ') 상의 화소값 I(θ', φ')(xα, yα )로 보간할 수 있다.
이때, θ'는, 예를 들면, 경도가 정수값만을 취할 경우에는, θ±1이나 θ±2 등으로 한다.
이상과 같은 화소값 보간처리는, 도 27의 화상데이터 변환처리가 종료한 후, 예를 들면, 화상데이터 변환부(31)로 행하게 할 수 있다.
그래서, 도 32의 흐름도를 참조하여, 화상데이터 변환부(31)가 행하는 화소값 보간처리에 대하여 설명한다. 이때, 여기서는, 설명을 간단히 하기 위해, 위도θ, 경도 φ, 평면 I(θ, φ)의 유효범위의 x 좌표 xα, y 좌표 yα는, 어느 것이나 정수값만을 취하는 것으로 한다.
화소값 보간처리에서는, 우선 처음에, 스텝 S41에서, 화상데이터 변환부(31)가, 위도를 나타내는 변수 θ와, 경도를 나타내는 변수 φ에, 초기값를 셋트함과 동시에, 평면 I(θ, φ)의 x 좌표를 나타내는 변수 xα와, y 좌표를 나타내는 변수 yα에, 초기값를 셋트한다. 예를 들면 초기값으로서, θ에 -90도, φ에 -180도, xα에 x1, yα에 y1을 각각 셋트한다.
그리고, 스텝 S42로 진행하고, 화상데이터 변환부(31)는, 중간데이터 I(θ, φ)(xα, yα)에, 화소값이 셋트되어 있는지 어떤지를 판정한다.
여기서, 중간데이터 I(θ, φ)(xα, yα)에, 화소값이 셋트되어 있는지 어떤지의 판정은, 예를 들면, 도 27의 화상데이터 변환처리를 행하기 전에, 중간데이터로서의 배열변수 I(θ, φ)(xα, yα)에, 화소값으로서는 취득하지 않는 값을, 초기값으로서 설정해 두고, 그 값이, I(θ, φ)(xα, yα)로 셋트되어 있는지 어떤지에 따라 행하는 방법이 있다.
스텝 S42에서, 중간데이터 I(θ, φ)(xα, yα)에, 화소값이 셋트되어 있다고 판정된 경우, 즉, 화소값이 결락되어 있지 않은 경우, 스텝 S43 및 S44를 스킵하여, 스텝 S45로 진행한다.
또한, 스텝 S42에서, 중간데이터 I(θ, φ)(xα, yα)에, 화소값이 셋트되어 있지 않다고 판정된 경우, 즉, 화소값이 결락되어 있는 경우, 스텝 S43으로 진행하고, 화상데이터 변환부(31)는, θ-Δθ<θ'<θ+Δθ의 범위의 위도 θ'와, φ-Δφ<φ'<φ+Δφ의 범위의 경도 φ'로 규정되는 평면 I(θ', φ') 상의 점 (x α, yα) 중에서, 화소값이 셋트되어 있는 것을 탐색(검색)한다.
여기서, Δθ와 Δφ로서는, 예를 들면, 어느 것이나, 작은 양의 정수값이 채용된다.
그 후, 스텝 S44로 진행하고, 화상데이터 변환부(31)는, 스텝 S43에서 탐색된 화소값이 셋트되어 있는 중간데이터 I(θ', φ')(xα, yα)의 값(화소값)을, 결락되어 있는 화소값인 중간데이터 I(θ, φ)(xα, yα)로 셋트하고, 스텝 S45로 진행한다.
여기서, 스텝 S43에서, θ-Δθ<θ'<θ+Δθ의 범위의 위도 θ'와, φ-Δφ<φ'<φ+Δφ의 범위의 경도 φ'로 규정되는 평면 I(θ', φ') 상의 점 (xα, yα) 중에서, 화소값이 셋트되어 있는 것이 복수 발견된 경우에는, 스텝 S44에서는, 화상데이터 변환부(31)는, 그 중에서, 예를 들면, 위도의 차의 절대치 │θ-θ'│와, 경도의 차의 절대치 │φ-φ'│의 제곱합이 가장 작은 것을 선택하고, 그 선택한 I(θ', φ')(xα, yα)의 값을, 중간데이터 I(θ, φ)(xα, yα)로 셋트한다. 요컨대, 평면 I(θ, φ)에 가까운 평면 I(θ', φ') 상의 데이터를 결락되어 있는 화소의 값으로 셋트한다.
또한, 스텝 S43에서, θ-Δθ<θ'<θ+Δθ의 범위의 위도 θ'와, φ-Δφ<φ'<φ+Δφ의 범위의 경도 φ'로 규정되는 평면 I(θ', φ') 상의 점 (xα, yα) 중에서, 화소값이 셋트되어 있는 것이 발견되지 않은 경우에는, 스텝 S44에서는, 화 상데이터 변환부(31)는, I(θ, φ) 상의 화소값이 셋트되어 있는 점 중에서, 점 (xα, yα)과 가장 가까운 점을 검색하고, 그 점에 셋트되어 있는 화소값을, 점 (xα , yα)으로 셋트한다.
이때, 화소값 보간처리에서는, 평면 I(θ, φ) 상의, 화소값이 셋트되어 있지 않은 점 (xα, yα)에, 화소값이 보간되기 때문에, 그 처리가 진행해 가면, 화소값이 보간된 점에서의 화소값에 따라, 더구나, 다른 점에서의 화소값이 보간되는 것이 생길 수 있다. 이것을 방지하기 위해서는, 화소값의 보간이 된 점에, 예를 들면, 보간이 된 것을 나타내는 보간플래그를 부가하도록 하고, 보간플래그가 부가되어 있는 점에서의 화소값은, 보간에 사용하지 않도록 할(스텝 S43에서의 탐색의 대상 외로 함) 필요가 있다.
스텝 S45에서는, 화상데이터 변환부(31)가, 평면 I(θ, φ) 상의 y 좌표를 나타내는 변수 yα가, 그 최대값인 y2와 같은지 어떤지를 판정한다. 스텝 S45에서, y 좌표 yα가 최대값 y2와 같지 않다고 판정된 경우, 스텝 S46으로 진행하고, 화상데이터 변환부(31)는, y 좌표 yα를 1만큼 인크리먼트하여, 스텝 S42로 되돌아가, 이하와 같은 처리를 반복한다.
또한, 스텝 S45에서, y 좌표 yα가, 최대값 y2와 같다고 판정된 경우, 스텝 S47로 진행하고, 화상데이터 변환부(31)는, y 좌표 yα를, 그 최소값인 y1로 리셋트하여, 스텝 S48로 진행한다.
스텝 S48에서는, 화상데이터 변환부(31)가, 평면 I(θ, φ) 상의 x 좌표를 나타내는 변수 xα가, 그 최대값인 x2와 같은지 어떤지를 판정한다. 스텝 S48에서, x 좌표 xα가, 최대값 x2와 같지 않다고 판정된 경우, 스텝 S49로 진행하고, 화상데이터 변환부(31)는, x 좌표 xα를 1만큼 인크리먼트하여, 스텝 S42로 되돌아가, 이하와 같은 처리를 반복한다.
또한, 스텝 S48에서, x 좌표 xα가, 최대값 x2와 같다고 판정된 경우, 스텝 S50으로 진행하고, 화상데이터 변환부(31)는, x 좌표 xα를, 그 최소값인 x1로 리셋트하여, 스텝 S51로 진행한다.
스텝 S51에서는, 화상데이터 변환부(31)는, 경도를 나타내는 변수 φ가, 그 최대값인 179도와 같거나 어떤지를 판정한다. 스텝 S51에서, 경도 φ가, 최대값인 179도와 같지 않다고 판정된 경우, 스텝 S52로 진행하고, 화상데이터 변환부(31)는, 경도 φ를 1만큼 인크리먼트하여, 스텝 S42로 되돌아가, 이하와 같은 처리를 반복한다.
또한, 스텝 S51에서, 경도 φ가, 최대값인 179도와 같다고 판정된 경우, 스텝 S53으로 진행하고, 화상데이터 변환부(31)는, 경도 φ를, 그 최소값인 -180도로 리셋트하여, 스텝 S54로 진행한다.
스텝 S54에서는, 화상데이터 변환부(31)는, 위도를 나타내는 변수 θ가, 그 최대값인 90도와 같은지 어떤지를 판정한다. 스텝 S54에서, 위도 φ가, 최대값인 90도와 같지 않다고 판정된 경우, 스텝 S55로 진행하고, 화상데이터 변환부(31)는, 위도 θ를 1만큼 인크리먼트하여, 스텝 S4로 되돌아가, 이하와 같은 처리를 반복한다.
또한, 스텝 S54에서, 위도 θ가, 최대값인 90도와 같다고 판정된 경우, 처리를 종료한다.
이때, 여기서는, 화소값 보간처리를, 화상데이터 변환부(31)에 행하게 하도록 하였지만, 화소값 보간처리는, 기타, 예를 들면, 도 27의 화상데이터 변환처리가 종료한 후에, 중간데이터 변환부(32)(도 5)로 행하게 하도록 하는 것도 가능하다.
그런데, 도 32의 화소값 보간처리에서는, 다른 점에 셋트되어 있는 화소값을, 화소값이 셋트되어 있지 않은 점의 화소값으로서, 그대로 사용하여 보간이 행해지기 때문에, 평면 I(θ, φ) 상에 형성되는 화상데이터의 참값이 존재한다고 가정하면 화소값 보간처리에 의해 얻어지는 화상데이터는, 기본적으로, 참값에 일치하지 않는다.
그렇지만, 참값에 일치하지 않을지라도, 참값에, 보다 가까운 화상데이터가 얻어지는 것이 바람직하다.
그래서, 도 32의 화소보간처리에 의해 얻어지는 화상데이터를, 참값에, 보다 가까운 화상데이터로 변환하는 방법으로서, 예를 들면, 본건 출원인이 먼저 제안하고 있는 클래스 분류 적응처리가 있다.
클래스 분류 적응처리는, 클래스 분류처리와 적응처리로 이루어지고, 클래스 분류처리에 의해, 데이터가, 그 성질에 근거하여 클래스로 나눠져, 각 클래스마다 적응처리가 시행된다.
여기서, 적응처리에 대하여, 저화질의 화상(이하, 적절히, 저화질화상이라 함)을, 고화질의 화상(이하, 적절히, 고화질화상이라 함)으로 변환하는 경우를 예로 설명한다.
이때, 도 32의 화소보간처리에 의해 얻어지는 화상데이터는, 참값과 비교하여 저화질인 저화질화상이라고 생각할 수 있어, 참값은, 도 32의 화소보간처리에 의해 얻어지는 화상데이터와 비교하여 고화질인 고화질화상이라 생각할 수 있다.
적응처리에서는, 저화질화상을 구성하는 화소(이하, 적절히, 저화질화소라 함)와, 소정의 탭계수와의 선형결합에 의해, 그 저화질화상의 화질을 향상시킨 고화질화상의 화소의 예측값을 구함으로써, 그 저화질화상의 화질을 높게 한 화상이 얻어진다.
구체적으로는, 예를 들면, 지금, 어떤 고화질화상을 교사데이터로 함과 동시에, 그 고화질화상의 화질을 열화시킨 저화질화상을 학생데이터로서, 고화질화상을 구성하는 화소(이하, 적절히, 고화질화소라 함)의 화소값 y의 예측값 E[y]를, 몇개인가의 저화질화소의 화소값 x1, x2,···의 집합과, 소정의 탭계수 w1, w2,···의 선형결합에 의해 규정되는 선형 1차 결합모델에 의해 구하는 것을 생각한다. 이 경우, 예측값 E[y]는, 다음식으로 나타낼 수 있다.
Figure 112004004287481-pct00019
식 (19)를 일반화하기 위해, 탭계수 wj의 집합으로 되는 행렬 W, 학생데이터 xij의 집합으로 되는 행렬 X, 및 예측값 E[yj]의 집합으로 되는 행렬 Y'를, 다음식과 같이 정의한다.
Figure 112004004287481-pct00020
이 경우, 다음과 같은 관측방정식이 성립한다.
Figure 112004004287481-pct00021
여기서, 행렬 X의 성분 xij는, i건번째의 학생데이터의 집합(i건번째의 교사데이터 yi의 예측에 사용하는 학생데이터의 집합) 중의 j번째의 학생데이터를 의미하고, 행렬 W의 성분 wj는, 학생데이터의 집합 중의 j번째의 학생데이터와의 곱이 연산되는 탭계수를 나타낸다. 또한, yi는, i건번째의 교사데이터를 나타내고, 따라서, E[yi]는, i건번째의 교사데이터의 예측값을 나타낸다. 이때, 식 (19)의 좌변에서의 y는, 행렬 Y의 성분 yi의 서픽스 i를 생략한 것으로, 또한, 식 (19)의 우변에서의 x1, x2,···도, 행렬 X의 성분 xij의 서픽스 i를 생략한 것이다.
식 (21)의 관측방정식에 최소 제곱법을 적용하여, 고화질화소의 화소값 y에 가까운 예측값 E[y]를 구하는 것을 생각한다. 그래서, 우선, 교사데이터가 되는 고화질화소의 참된 화소값 y의 집합으로 되는 행렬 Y, 및 고화질화소의 화소값 y에 대한 예측값 E[y]의 잔차 e의 집합으로 되는 행렬 E를, 다음식으로 정의한다.
Figure 112004004287481-pct00022
이 경우, 식 (21)부터, 다음과 같은 잔차방정식이 성립한다.
Figure 112004004287481-pct00023
최소제곱법으로는, 고화질화소의 화소값 y에 가까운 예측값 E[y]를 구하기 위한 탭계수 wj를 평가하는 척도로서, 예를 들면, 다음식으로 나타내는 제곱오차가 채용된다.
Figure 112004004287481-pct00024
고화질화소의 화소값 y에 가까운 예측값 E[y]를 구하기 위한 탭계수 wj는, 식 (24)의 제곱오차를 최소로 하는 것으로 구할 수 있다.
따라서, 식 (24)의 제곱오차를 탭계수 wj로 미분한 것이 0이 되는 경우, 즉, 다음식을 만족하는 탭계수 wj가, 고화질화소의 화소값 y에 가까운 예측값 E[y]를 구 하기 위해 최적값이라 하게 된다.
Figure 112004004287481-pct00025
그래서, 우선, 식 (23)을, 탭계수 wj로 미분함으로써, 다음식이 성립한다.
Figure 112004004287481-pct00026
식 (25) 및 (26)으로부터, 식 (27)을 얻을 수 있다.
Figure 112004004287481-pct00027
더구나, 식 (23)의 잔차방정식에서의 학생데이터 xij, 탭계수 wj, 교사데이터 yi, 및 잔차(오차) ei의 관계를 고려하면, 식 (27)로부터, 다음과 같은 정규방정식을 얻을 수 있다.
Figure 112004004287481-pct00028
이때, 지금, 벡터 W를, 식 (20)에서 나타낸 바와 같이 정의함과 동시에, 행 렬(공분산행렬) A 및 벡터 v를, 다음식으로 정의한다.
Figure 112004004287481-pct00029
이 경우, 식 (28)에 나타낸 정규방정식은, 다음식으로 표시된다.
Figure 112004004287481-pct00030
식 (30)과 등가인 식 (28)에서의 각 정규방정식은, 학생데이터 xij 및 교사데이터 yi의 셋트를, 어느 정도의 수만큼 준비함으로써, 구해야 하는 데이터 계수 wj의 수 J와 같은 수만큼 세울 수 있고, 따라서, 식 (30)을, 벡터 W에 대하여 푸는 것으로(단, 식 (30)을 풀기 위해서는, 식 (30)에서의 행렬 A가 정칙일 필요가 있음), 최적의 탭계수 wj를 구할 수 있다. 이때, 식 (30)을 푸는 예에 있어서는, 예를 들면, 소거법(Gauss-Jordan의 소거법) 등을 사용하는 것이 가능하다.
이상과 같이, 학생데이터와 교사데이터를 사용하여, 최적의 탭계수 wj를 구하는 학습을 해 두고, 더구나, 그 탭계수 wj를 사용하여, 식 (19)에 의해, 교사데이터 y에 가까운 예측값 E[y]를 구하는 것이 적응처리이다.
이때, 적응처리는, 저화질화상에는 포함되어 있지 않지만, 고화질화상에 포함되는 성분이 재현되는 점에서, 단순한 보간과는 다르다. 즉, 적응처리에서는, 식 (19)만을 보는 한은, 예를 들면, 소위 보간필터를 사용한 단순한 보간과, 동일하게 보이지만, 그 보간필터의 탭계수에 해당하는 탭계수 w가, 교사데이터 y를 사용한, 말하자면 학습에 의해 요청되기 때문에, 고화질화상에 포함되는 성분을 재현할 수 있다. 이것으로부터, 적응처리는, 말하자면 화상의 창조작용이 있는 처리라 할 수 있다.
다음에, 도 33은, 전술한 바와 같이 클래스 분류 적응처리를 행하는 클래스 분류 적응처리장치의 구성예를 나타내고 있다.
이때, 클래스 분류 적응처리장치는, 예를 들면, 도 5의 화상데이터 변환부(31) 또는 중간데이터 변환부(32)에 내장시켜, 도 32의 화소값 보간처리가 시행된 중간데이터를 대상으로, 클래스 분류 적응처리를 행하게 하도록 할 수 있다. 또한, 클래스 분류 적응처리장치는, 도 5의 화상데이터 변환부(31) 및 중간데이터 변환부(32)와는 별도로 설치하고, 중간데이터 베이스(3)에 기억된, 도 32의 화소값 보간처리가 시행된 중간데이터를 대상으로, 클래스 분류 적응처리를 행하게 하도록 할 수 있다.
버퍼(61)에는, 저화질 화상데이터로서의, 화소값 보간처리가 시행된 중간데이터(이하, 적절히, 보간 중간데이터라 함)가 공급되고, 버퍼(61)는, 거기에 공급되는 저화질 화상데이터를 일시 기억한다.
예측탭 추출부(62)는, 후술하는 적화연산부(66)에서 구하고자 하는, 중간데이터의 참값으로서의 고화질 화상데이터의 화소(고화질화소)를, 순차, 주목화소로 하고, 더구나, 그 주목화소를 예측하는 데 사용하는 저화질 화상데이터의 화소(저화질화소)를, 버퍼(61)로부터 추출하여, 예측탭으로 한다.
즉, 예측탭 추출부(62)는, 예를 들면, 주목화소에 대응하는 위치에 대하여 가까운 위치에 있는 저화질화소의 몇개인가를, 예측탭으로서, 버퍼(61)에서 판독한다.
그리고, 예측탭 추출부(62)는, 주목화소에 대하여, 예측탭을 얻으면, 그 주목화소에 대한 예측탭을, 적화연산부(66)에 공급한다.
여기서, 예측탭 추출부(62)에서는, 예를 들면, 주목화소의 평면에 대응하는 저화질 화상데이터로서의 중간데이터의 평면 I(θ, φ)에서, 주목화소에 대응하는 위치로부터 가까운 위치에 있는 저화질화소의 몇개인가를, 예측탭으로서 추출할 수 있다. 더구나, 예측탭 추출부(62)에서는, 평면 I(θ', φ)으로부터 위도 θ또는 경도 φ가 조금 어긋난 평면 I(θ', φ')에서, 주목화소에 대응하는 위치로부터 가까운 위치에 있는 저화질화소의 몇개인가도, 예측탭으로서 추출하는 것이 가능하다.
한편, 클래스탭 추출부(63)는, 주목화소를, 몇개인가의 클래스 중 어느 하나로 분류하기 위한 클래스 분류에 사용하는 저화질화소를, 버퍼(61)로부터 추출하 여, 클래스탭으로 한다.
이때, 여기서는, 설명을 간단히 하기 위해, 예를 들면, 예측탭 추출부(62)에서 얻어지는 예측탭과, 클래스탭 추출부(63)에서 얻어지는 클래스탭이과는, 동일한 탭구조를 갖는 것으로 한다. 단, 예측탭과 클래스탭과는, 독립(별도)한 탭구조를 갖는 것으로 하는 것이 가능하다.
클래스탭 추출부(63)에서 얻어지는, 주목화소에 대한 클래스탭은, 클래스 분류부(64)에 공급된다. 클래스 분류부(64)는, 클래스탭 추출부(63)로부터의 클래스탭에 근거하여, 주목화소를 클래스 분류하고, 그 결과 얻어지는 클래스에 대응하는 글래스 코드를 출력한다.
여기서, 클래스 분류를 행하는 방법으로서는, 예를 들면, ADRC(Adaptive Dynamic Range Coding) 등을 채용할 수 있다.
ADRC를 사용하는 방법에서는, 클래스탭을 구성하는 화소의 화소값이, ADRC 처리되고, 그 결과 얻어지는 ADRC 코드에 따라, 주목화소의 클래스가 결정된다.
이때, K 비트 ADRC에서는, 예를 들면, 클래스탭을 구성하는 화소값의 최대값 MAX와 최소값 MIN이 검출되고, DR=MAX-MIN을, 집합이 국소적인 다이나믹 레인지로 하고, 이 다이내믹 레인지 DR에 근거하여, 클래스탭을 구성하는 화소가 K 비트로 재양자화된다. 즉, 클래스탭을 구성하는 각 화소의 화소값으로부터, 최소값 MIN이 감산되고, 그 감산값이 DR/2K에서 제산(양자화)된다. 그리고, 이상과 같이 하여 얻어지는, 클래스탭을 구성하는 K 비트의 각 화소의 화소값을, 소정의 순번으로 나열한 비트열이, ADRC 코드로서 출력된다. 따라서, 클래스탭이, 예를 들면, 1비트 ADRC 처리된 경우에는, 그 클래스탭을 구성하는 각 화소의 화소값은, 최소값 MIN이 감산된 후에, 최대값 MAX와 최소값 MIN과의 평균값으로 제산되고, 이에 따라, 각 화소의 화소값이 1비트로 된다(2값화 된다). 그리고, 그 1비트의 화소값을 소정의 순번으로 나열한 비트열이, ADRC 코드로서 출력된다.
이때, 클래스 분류부(64)에는, 예를 들면, 클래스탭을 구성하는 화소의 레벨분포(화소값분포)의 패턴을, 그대로 글래스 코드로서 출력시키는 것도 가능하지만, 이 경우, 클래스탭이, N개의 화소로 구성되고, 각 화소에, K 비트가 할당되어 있다고 하면, 클래스 분류부(64)가 출력하는 글래스코드의 경우의 수는, (2N)K 대로 되어, 화소의 비트수 K에 지수적으로 비례한 방대한 수가 된다.
따라서, 클래스 분류부(64)에서는, 클래스탭의 정보량을, 전술한 ADRC 처리나, 혹은 벡터양자화 등에 의해 압축하고 나서, 클래스 분류를 행하는 것이 바람직하다.
클래스 분류부(64)가 출력하는 글래스 코드는, 계수기억부(65)에, 어드레스로서 공급된다.
계수기억부(65)는, 후술하는 학습장치에서 학습처리가 행해짐으로써 얻어지는 탭계수를 기억하고 있고, 클래스 분류부(64)가 출력하는 클래스 코드에 대응하는 어드레스에 기억되어 있는 탭계수를, 적화연산부(66)에 출력한다.
적화연산부(66)는, 예측탭 추출부(62)가 출력하는 예측탭과, 계수기억부(65)가 출력하는 탭계수를 취득하고, 그 예측탭과 탭계수를 사용하여, 식 (19)에 나타낸 선형예측연산(적화연산)을 행하고, 그 연산결집을, 주목화소로 되어 있는 고화 질화소의 화소값으로서 출력한다.
다음에, 도 34는, 도 33의 계수기억부(65)에 기억시키는 탭계수의 학습처리를 행하는 학습장치의 일실시예의 구성예를 나타내고 있다.
교사데이터 메모리(71)에는, 학습에 사용되는 학습용 데이터가 공급된다. 여기서, 학습용 데이터로서는, 중간데이터의 참값으로서의 고화질 화상데이터가 사용된다. 즉, 예를 들면, 다수의 시점에서 촬상된 화상데이터를 대상으로, 도 27의 화상데이터 변환처리를 행함으로써, 화소값의 결락이 없는 중간데이터를 생성하고, 이것이, 학습용 데이터로서 사용된다.
교사데이터 메모리(71)는, 거기에 공급되는, 학습용 데이터로서의 고화질 화상데이터를, 학습의 교사가 되는 교사데이터로서 기억한다. 그리고, 학생데이터 생성부(72)는, 교사데이터 메모리(71)에 기억된 교사데이터로부터, 학습의 학생이 되는 학생데이터를 생성한다.
즉, 학생데이터 생성부(72)는, 교사데이터 메모리(71)에 기억된 교사데이터로서의 화상데이터의 화소값을 결락시켜, 그 화소값을 결락시킨 화상데이터에, 도 32의 화소값 보간처리를 시행한다. 그리고, 학생데이터 생성부(72)는, 그 화소값 보간처리에 의해 얻어지는 저화질의 화상데이터를, 학생데이터로서, 학생데이터 메모리(73)에 공급하여 기억시킨다.
교사데이터 메모리(71)에 기억된 교사데이터에 대하여, 학생데이터가 구해지고, 학생데이터 메모리(73)에 기억되면, 예측탭 추출부(74)는, 교사데이터 메모리(71)에 기억된 교사데이터를, 순차, 주목화소로 하고, 더구나, 그 주목화소 를 예측하는 데 사용하는 학생데이터를, 학생데이터 메모리(73)로부터 추출하며, 이에 따라, 도 33의 예측탭 추출부(62)가 구성하는 예측탭과 동일한 탭구조의 예측탭을 구성한다.
이상과 같이 하여, 예측탭 추출부(74)에서 얻어진 예측탭은, 정규 방정식 가산부(77)에 공급된다.
한편, 클래스탭 추출부(75)는, 주목화소의 클래스 분류에 사용하는 학생데이터를, 학생데이터 메모리(73)로부터 추출하고, 이에 따라, 도 33의 클래스탭 추출부(63)에서의 경우와 동일구조의 클래스탭을 구성하여, 클래스 분류부(76)에 공급한다.
클래스 분류부(76)는, 클래스탭 추출부(75)로부터, 주목화소에 대한 클래스탭이 공급되면, 그 클래스탭을 사용하고, 도 33의 클래스 분류부(64)와 동일한 클래스 분류를 행하여, 주목화소의 클래스를 나타내는 글래스 코드를, 정규 방정식 가산부(77)에 공급한다.
정규 방정식 가산부(77)는, 교사데이터 메모리(71)로부터, 주목화소로 되어 있는 교사데이터를 판독하고, 예측탭 추출부(74)로부터의 예측탭을 구성하는 학생데이터, 및 주목화소로서의 교사데이터를 대상으로 한 합계를, 클래스 분류부(76)로부터 공급되는 클래스마다 행한다.
즉, 정규 방정식 가산부(77)는, 클래스 분류부(76)로부터 공급되는 글래스 코드에 대응하는 클래스마다, 예측탭(학생데이터)을 사용하고, 식 (29)의 행렬 A에서의 각 컴포넌트(component)로 되어 있다, 학생데이터끼리의 승산(xin, xim)과 섬 메이션(summation)(Σ)에 해당하는 연산을 행한다.
더구나, 정규 방정식 가산부(77)는, 역시, 클래스 분류부(76)로부터 공급되는 글래스 코드에 대응하는 클래스마다, 예측탭(학생데이터) 및 주목화소(교사데이터)를 사용하고, 식 (29)의 벡터 v에서의 각 컴포넌트로 되어 있다, 학생데이터와 교사데이터의 승산과, 섬메이션(Σ)에 해당하는 연산을 행한다.
정규 방정식 가산부(77)는, 이상의 합계를, 교사데이터 메모리(71)에 기억된 교사데이터 전부를 주목화소로서 행하고, 이에 따라, 각 클래스에 대하여, 식 (30)에 나타낸 정규방정식을 세운다.
그 후, 탭계수 결정부(78)는, 정규 방정식 가산부(77)에서 클래스마다 생성된 정규방정식을 푸는 것에 의해, 클래스마다, 탭계수를 구하고, 계수메모리(79)의, 각 클래스에 대응하는 어드레스에 공급한다. 이에 따라, 계수메모리(79)로서는, 탭계수 결정부(78)로부터 공급되는 클래스마다의 탭계수가 기억된다.
이때, 도 29a 및 도 29b의 중간데이터의 포맷은, 원화상데이터를 구성하는 화소에 입사한 광선의 각 방향(위도 θ와 경도 φ에 의해 특정되는 각 방향)에 대하여, 그 방향에 수직인 평면의 각 점마다, 그 점에 입사하는, 평면과 수직인 방향의 광선에 대응하는 화소값을 나타낸 것이지만, 중간데이터는, 기타, 예를 들면, 도 35a 및 도 35b에 나타내는 포맷으로 하는 것도 가능하다.
즉, 도 29a 및 도 29b의 포맷으로서는, 중간데이터가, 위도 θ와 경도 φ의 값으로 구분되는 위도경도 테이블(도 29a)로 표현되고, 더구나, 위도경도 테이블의 각 셀에는, 그 셀에 대응하는 위도 θ와 경도 φ로 규정되는 평면 I(θ, φ) 상에 정사영된 원화상데이터의 화소의 화소값이, 그 평면 I(θ, φ) 상에 정의된 2차원 좌표계의 각 x 좌표 xα와 각 y 좌표 yα마다 배치된 화소값 테이블이 등록되어 있다.
이것에 대하여, 도 35a 및 도 35b의 중간데이터의 포맷은, 원화상데이터를 구성하는 화소에 입사한 광선의 방향과 수직한 평면의 각 점에 대하여, 그 평면과 수직인 방향마다, 그 방향의 광선에 대응하는 화소값을 나타낸 것으로 되어 있다.
즉, 도 35a 및 도 35b의 포맷에서는, 중간데이터가, 도 35a에 나타내는 바와 같이, 원화상데이터의 화소의 화소값이 정사영되는 평면 I(θ, φ) 상에 정의된 2차원 좌표계의 x 좌표 xα와 y 좌표 yα의 값으로 구분된 테이블(이하, 적절히, 좌표테이블이라 함)로 표현되고, 더구나, 그 좌표테이블의 각 셀에는, 도 35b에 나타내는 바와 같이, 그 셀에 대응하는 x 좌표 xα와 y 좌표 yα로 규정되는 점에 정사영된 원화상데이터의 화소값이, 화소값이 정사영되는 평면 I(θ, φ)을 규정하는 각 위도 θ와 각 경도 φ 마다 배치된 테이블(이 테이블도, 이하, 적절히, 화소값 테이블이라 함)이 등록된다.
도 35a 및 도 35b의 포맷에서는, 좌표테이블의 하나의 셀에, 위도 θ와 경도 φ가 각 값의 평면에서의, 동일좌표의 점에 정사영된 원화상데이터의 화소값이 배치되기 때문에, 도 32의 화소값 보간처리를 행하는 경우에, 도 29a 및 도 29b의 포맷보다도 유리하다.
즉, 도 32의 화소값 보간처리에서는, 평면 I(θ, φ) 상의 어떤 점 (xα, y α)에서의 화소값 I(θ, φ)(xα, yα)가 결락되어 있는 경우에는, 위도 또는 경도가 조금 어긋난 평면 I(θ', φ') 상의, 점 (xα, yα)과 동일좌표의 점에서의 화소값 I(θ', φ')(xα, yα)에 의해, 결락되어 있는 화소값 I(θ, φ)(xα, y α)가 보간된다.
따라서, 도 29a 및 도 29b의 포맷의 중간데이터로는, 화소값 보간처리를 행하는 데, 위도경도 테이블(도 29a)에서, 화소값의 결락이 있는 평면 I(θ, φ)에 대응하는 셀과는 별도의 셀이다, 평면 I(θ', φ')에 대응하는 셀로부터, 화소값 I(θ', φ')(xα, yα)를 판독할 필요가 있다.
이것에 대하여, 도 35a 및 도 35b의 포맷의 중간데이터로는, 좌표테이블(도 35a)에서, 각 위도 θ와 각 경도 φ의 평면 I(θ, φ) 상에서의 동일좌표 (xα, yα)의 점에서의 화소값이, 하나의 셀에 등록되어 있기 때문에, 화소값 보간처리를 행하는데 있어서는, 화소값의 결락이 있는 평면 I(θ, φ) 상의 점 (xα, yα)에 대응하는 셀과 동일한 셀로부터, 화소값 I(θ', φ')(xα, yα)를 판독할 수 있다. 즉, 이 경우, 좌표테이블(도 35a)에서, 화소값의 결락이 있는 평면 I(θ, φ) 상의 점 (xα, yα)에 대응하는 셀과 별도의 셀에 액세스할 필요가 없다.
다음에, 도 36의 흐름도와, 도 37을 참조하여, 도 5의 중간데이터 변환부(32)가, 도 6의 스텝 S3에서 행하는 중간데이터 변환처리, 즉, 중간데이터를, 사용자의 시점에서 본 화상데이터(제시용 화상데이터)로 변환하는 처리에 대하 여 설명한다.
우선 처음에, 스텝 S61에서, 중간데이터 변환부(32)는, 도 6의 스텝 S2에서 설정된 사용자의 시점 Pc에 대하여, 도 37에 나타내는 바와 같이, 그 사용자의 시점 Pc로부터, 그 시선방향으로 향하여, 소정의 거리 L만큼 멀어진 위치에, 사용자의 시선과 직교하는 직사각형형의 평면을, 가상스크린으로서 설정한다.
여기서, 본 실시예에서는, 설명을 간단히 하기 위해, 도 27에서 설명한 화상데이터 변환처리에서는, 피사체의 어떤 점(예를 들면, 중심 등)을 원점으로 하는 촬상시 좌표계를 사용하여 처리가 행해지는 것으로 한다.
더구나, 중간데이터 변환처리에서는, 디스플레이(6)(도 2)에, 사용자의 시점에 따른 화상을 표시하기 위한 3차원 좌표계가 상정된다. 지금, 이 3차원 좌표계를, 표시시 좌표계라 하는 것으로 하고, 그 원점은, 예를 들면, 디스플레이(6)의 표시화면의 중심점(표시화면의 대각선의 교점)으로 잡히는 것으로 한다. 그리고, 사용자의 시선은, 시점 Pc로부터, 예를 들면, 표시시 좌표계의 원점으로 향하는 것으로 한다.
그 후, 스텝 S62로 진행하고, 중간데이터 변환부(32)는, 사용자의 시점 Pc에 대하여 설정한 가상스크린 상의 화소 중, 아직 주목화소로서 선택하고 있지 않은 화소를, 주목화소 Ps로서 선택한다.
스텝 S62의 처리 후에는, 스텝 S63으로 진행하고, 중간데이터 변환부(32)는, 주목화소 Ps를 시점으로 하며, 사용자의 시점 Pc을 종점으로 하는 벡터 v를 구하여, 스텝 S64로 진행한다.
여기서, 도 37의 실시예에서는, 벡터 v는, 표시시 좌표계에서, xz 평면 내의 벡터로서, xy 평면으로부터 z축방향으로 각도 θ의 방향을 갖게 되어 있다. 즉, 도 37의 실시예에서는, 벡터 v는, 위도가 θ로, 경도가 0도인 방향의 벡터로 되어 있다.
또한, 도 37의 실시예에서는, 사용자의 시선방향이, 전술한 바와 같이, 사용자의 시점 Pc로부터 표시시 좌표계의 원점을 지나게 되어 있지만, 사용자의 시선방향은, 반드시, 표시시 좌표계의 원점을 지날 필요는 없다. 즉, 사용자의 시선방향은, 어떠한 방법으로 검출하도록 할 수 있다.
더구나, 도 37에서는, 도 28에서의 경우와 마찬가지로, 피사체를 둘러싸는 곡면 Ω으로서, 폐곡면인 구면을 나타내고 있다.
스텝 S64에서는, 중간데이터 변환부(32)는, 벡터 v와 직교하고, 표시시 좌표계 상의 소정의 점으로서의 원점을 지나는 평면 α를 구하여, 스텝 S65로 진행한다.
여기서, 평면 α는, 반드시, 원점을 지날 필요는 없다.
스텝 S65에서는, 중간데이터 변환부(32)는, 스텝 S63에서 구한 벡터 v의 위도 θ 및 경도 φ를 구하고, 즉, 벡터 v와 xy 평면이 만드는 각도인 위도 θ, 및 벡터 v와 xz 평면과 만드는 각도인 경도 φ를 구하여, 스텝 S66으로 진행한다.
여기서, 벡터 v의 위도 θ 및 경도 φ는, 스텝 S64에서 구해진 평면 α의 법선방향의 위도 θ 및 경도 φ 이기도 한다. 따라서, 소정의 점으로서의 원점을 지나는 평면 α는, 그 위도 θ와 경도 φ에 의해 특정할 수 있으므로, 이 위도 θ와 경도 φ에 의해 특정되는 평면 α를, 화상데이터 변환처리에서의 경우와 마찬가지로, 이하, 적절히, 평면 I(θ, φ)라고도 기술한다.
스텝 S66에서는, 중간데이터 변환부(32)는, 도 37에 나타내는 바와 같이, 사용자의 시점 Pc와 주목화소 Ps를 연결하는 직선 Lp를 구한다. 더구나, 스텝 S66에서는, 중간데이터 변환부(32)는, 직선 Lp와, 스텝 S64에서 구한 평면 α(I(θ, φ))와의 교점 Px를 구하여, 스텝 S67로 진행하고, 그 점 Px의, 평면 α 상의 2차원 좌표계에서의 좌표 (xα, yα)를 구한다.
여기서, 평면 α 상에서의 점 Px의 좌표 (xα, yα)는, 도 27의 스텝 S27에서의 경우와 동일하게 하여 구할 수 있다.
이때, 사용자의 시점 Pc로부터의 시선방향이, 표시시 좌표계의 원점을 지나지 않는 경우는, 예를 들면, 도 27의 스텝 S27에서 설명한 경우와 마찬가지로, 그 시선방향의 직선과 평면 α와의 교점의, 평면 α 상의 2차원 좌표계의 좌표만큼만, 점 Px의 좌표 (xα, yα)를 오프셋할 필요가 있다.
그 후, 스텝 S68로 진행하고, 중간데이터 변환부(32)는, 가상스크린 상의 주목화소 Ps의 화소값으로서, 평면 α 상의 점 Px의 위치의 화소의 화소값을 셋트한 다. 즉, 평면 α가, 위도 θ와 경도 φ로 특정되는 평면 I(θ, φ)이고, 평면 α 상의 점 Px의 좌표가, (xα, yα)인 경우, 중간데이터 변환부(32)는, 중간데이터 베이스로부터, 화소값 I(θ, φ)(xα, yα)를 판독하고, 그 화소값(θ, φ)(xα , yα)을, 주목화소 Ps의 화소값으로서 셋트한다.
그리고, 스텝 S69로 진행하고, 중간데이터 변환부(32)는, 사용자의 시점 Pc에 대하여 설정된 가상스크린 상의 모든 화소를 주목화소로 했는지 어떤지를 판정하며, 아직, 주목화소로 하고 있지 않은 것이 있다고 판정된 경우, 스텝 S62로 되돌아가, 이하와 같은 처리가 반복된다.
또한, 스텝 S69에서, 가상스크린 상의 모든 화소를 주목화소로 했다고 판정된 경우, 즉, 가상스크린 상에, 사용자의 시점에서 본 화상데이터(제시용 화상데이터)가 형성된 경우, 처리를 종료한다.
이상과 같이 하여 얻어진 제시용 화상데이터는, 전술한 도 6의 스텝 S4에서, 디스플레이(6)에 표시된다.
따라서, 디스플레이(6)에는, 사용자의 시점으로부터 피사체를 본 경우의 화상데이터가 표시되게 된다.
이상과 같이, 원화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 원화상데이터를, 사용자의 시점에서 보이는 제시용 화상데이터로 변환하도록 했으므로, 실사의 화상이어도, 용이하게, 사용자의 시점에 따라 변화시킬 수 있다. 즉, 사용자가, 그 시점을 움직이게 함으로써, 디스플레이(6)에는, 사용자가 현실세계에서 피사체를 관찰하고 있는 경우에 사용자의 시각에 비치는 것과 동일한 화상이 표시된다.
구체적으로는, 예를 들면, 사용자가, 디스플레이(6)로 향하여, 좌측 또는 우측방향으로 시점을 이동한 경우에는, 디스플레이(6)에는, 사용자가 시점을 움직이기 전에 표시되어 있던 피사체의 좌측면측 또는 우측면측이 보이는 화상이 표시된다. 또한, 예를 들면, 사용자가, 디스플레이(6)에 대하여 가까운 방향 또는 멀어지는 방향으로 시점을 이동한 경우에는, 디스플레이(6)에는, 사용자가 시점을 움직이기 전에 표시되어 있던 피사체가 크게 또는 작아진 화상이 표시된다.
그 결과, 사용자는, 피사체로서의 물체가, 실제로, 그 곳에 있을 것 같은 감각을 향수할 수 있다.
또한, 도 5의 화상처리장치(1)에 의하면, 예를 들면, 우주공간의 화상데이터나, 분자 등의 미크로의 구조의 화상데이터 등을, 원화상데이터로서, 도 6의 화상처리를 행하도록 함으로써, 통상은 시인할 수 없는 구조를, 사용자가 직감적으로 파악할 수 있는 인터페이스의 제공이 가능하게 된다.
더구나, 도 5의 화상처리장치(1)에서는, 원화상데이터를, 피사체를 무한원의 각 방향에서 관찰한 중간데이터로 변환해 두도록 했으므로, 그 중간데이터로부터, 사용자의 시점에 따른 제시용 화상데이터를, 용이하게 생성할 수 있다.
이때, 중간데이터는, 별도의 피사체에 대하여, 독립적으로 생성해 놓고, 도 36의 중간데이터 변환처리에 있어서, 제시용 화상데이터를 생성하는 과정에서, 그 각각의 피사체의 화상을 합성하도록 하는 것도 가능하다.
또한, 중간데이터에 대해서는, 도 36의 중간데이터 변환처리의 대상으로 하기 전에, 그 일부를 삭제하거나, 그 일부에, 다른 중간데이터 등의 화상데이터를 추가하는 등의 편집을 행하는 것이 가능하다.
더구나, 도 5의 화상처리장치(1)에서 처리의 대상으로 하는 화상은, 실사의 화상에 한정되는 것은 아니다.
또한, 전술한 경우에는, 사용자의 위치를 검출하고, 그 위치에, 사용자의 시점을 설정하여(사용자의 시점이 있는 것으로 하여), 도 36의 중간데이터 변환처리를 행하도록 했지만, 사용자의 시점은, 도 5의 화상처리장치(1)에서, 가상적으로 임의의 위치에 설정하는 것이 가능하다.
가상적인 사용자의 시점의 설정방법으로서는, 예를 들면, 표시시 좌표계의 원점을 중심으로 하는, 소정의 평면 상에 그려지는 소정의 반경의 원의 원주 상을, 순차 이동하도록 설정하는 것을 들 수 있다. 이 경우, 디스플레이(6)에는, 피사체의 주위를 펜(pan)하면서 촬상을 행하였을 것 같은 화상이 표시되게 된다.
또한, 사용자의 시점은, 예를 들면, 표시시 좌표계의 원점을 지나는 직선 상을, 일방향으로 이동하도록 설정하는 것이 가능하다. 이 경우, 디스플레이(6)에는, 피사체에 가까워지면서, 또는 피사체로부터 멀어지면서 촬상을 행하였을 것 같은 화상이 표시되게 된다.
더구나, 전술한 경우에는, 정지하고 있는 피사체를, 그 피사체를 모션베이스 방식이나 턴테이블방식으로 움직이면서, 카메라(41)로 촬상함으로써, 다수의 시점에서 촬상한 피사체의 원화상데이터를 얻도록 하였지만, 도 5의 화상처리장치(1)에 서는, 움직임이 있는 피사체의 화상을 대상으로 처리를 행하는 것도 가능하다. 이것은, 예를 들면, 복수의 카메라에 의해, 복수의 시점으로부터, 움직이고 있는 피사체의 화상데이터를 동시에 촬상함과 동시에, 그 복수의 카메라 각각에 의해 촬상된 각 프레임의 화상데이터에 대하여, 프레임마다, 중간데이터를 생성하고, 더구나, 표시시에도, 프레임마다, 그 프레임의 중간데이터를 사용하여, 제시용 화상데이터를 생성함으로써 실현할 수 있다. 단, 이 방법 이외의 방법이라도 된다.
다음에, 도 38은, 도 3의 컴퓨터(1)가 프로그램을 실행함으로써 실현되는 화상처리장치의 다른 기능적 구성예를 나타내고 있다. 이때, 도면 중, 도 5에서의 경우와 대응하는 부분에 대해서는, 동일한 부호를 부착해 놓고, 이하에서는, 그 설명은, 적절히 생략한다. 즉, 도 38의 화상처리장치(1)는, 재생프레임 관리부(34)가 새롭게 설치되어 있는 것 외는, 도 5에서의 경우와 거의 동일하게 구성되어 있다.
단, 도 38의 실시예에서는, 화상데이터 베이스(2)에는, 카메라를, 직선적으로 이동하면서 촬상된 화상데이터가 기억되어 있다. 즉, 화상데이터 베이스(2)에는, 예를 들면, 카메라를 등속 직선운동시키면서 촬상을 행한 영화의 장면이나, 정속도로 주행하는 자동차나 열차의 차창에서 카메라에 의한 촬상을 행한 화상데이터 등이 기억되어 있다.
이 때문에, 도 38의 실시예에서는, 디스플레이(6)에 표시되는 화상데이터의 프레임을 관리하기 위해, 재생프레임 관리부(34)가 설치되어 있다. 즉, 재생프레임 관리부(34)는, 중간데이터로 변환된 원화상데이터의 프레임(또는 필드)수를, 화상데이터 변환부(31)로부터 수신하고, 또한, 디스플레이(6)에 표시시키는 제시용 화 상데이터의 프레임을, 중간데이터 변환부(32)에 지시한다.
여기서, 도 38의 실시예에서, 화상데이터 베이스(2)에 기억되어 있는 화상데이터는, 등가적으로, 카메라를, 직선적으로 이동하면서 촬상된 것이면 되고, 따라서, 예를 들면, 카메라를 고정하여, 피사체를 직선적으로 이동하면서 촬상을 행함으로써 얻어지는 것이어도 된다.
도 38의 화상처리장치(1)에서도, 도 5의 실시예에서의 경우와 동일한 원리에 의해, 화상데이터 베이스(2)에 기억된 원화상데이터가, 사용자의 시점에서 본 화상데이터(제시용 화상데이터)로 변환된다.
즉, 화상데이터 베이스(2)에 기억된 원화상데이터는, 카메라를, 예를 들면, 등속 직선운동하는 열차에 고정하여 촬상한 것, 즉, 열차가 주행하는 방향으로, 카메라의 시점을 이동하면서 촬상한 것으로, 따라서, 원화상데이터는, 도 39a에 나타내는 바와 같이, 지구의 경도의 각 방향의 광선에 대응하는 화소값을 포함한다. 여기서, 도 39a에서는, 3개의 방향 #1 내지 #3의 광선을 나타내고 있다.
한편, 어떤 시점에서 피사체를 본 경우의 화상데이터는, 피사체로부터 시점으로 향하는 광선에 대응하는 화소값으로 이루어진다. 따라서, 지금, 광선은 직진하고, 동시에 감쇄하지 않는 것으로 하면, 열차가 주행하는 궤적과 평행한 직선 상의 어떤 시점에서 피사체를 본 경우의 화상데이터인 제시용 화상데이터는, 도 39b에 나타내는 바와 같이, 피사체로부터 시점으로 향하는 광선에 대응하는 화소값으로 이루어지는 화상데이터를, 도 39a에 나타낸 각 방향의 광선에 대응하는 화소값을 포함하는 원화상데이터로부터 재구성함으로써 얻을 수 있다.
도 38의 화상처리장치(1)에서는, 전술한 원리로 하고자 하고, 원화상데이터가, 열차의 주행궤적과 평행한 직선 상의 사용자의 시점에서 본 화상데이터(제시용 화상데이터)로 변환된다.
이때, 여기서는, 화상데이터 베이스(2)에 기억된 원화상데이터는, 열차가 주행하는 방향으로, 카메라의 시점을 이동하면서 촬상한 것이기 때문에, 도 38의 화상처리장치(1)에서 얻어지는 제시용 화상데이터는, 전술한 바와 같은 원화상데이터가 촬상되었을 때의 광선정보로부터 구성할 수 있는 것에 한정된다. 즉, 도 38의 화상처리장치(1)에서 얻어지는 제시용 화상데이터에는, 열차가 주행하는 평면과 수직인 방향으로의 사용자의 시점의 이동은 반영되지 않는다(반영할 수 없음).
다음에, 도 40의 흐름도를 참조하여, 도 38의 화상처리장치(컴퓨터)에 의한 화상처리에 대하여 설명한다.
우선 처음에, 스텝 S81에서, 화상데이터 변환부(31)는, 화상데이터 베이스(2)로부터 원화상데이터를 판독하고, 중간데이터로 변환한다. 더구나, 스텝 S81에서는, 화상데이터 변환부(31)는, 중간데이터를, 중간데이터 베이스(3)에 공급하여 5기억시켜, 스텝 S82로 진행한다.
스텝 S82에서는, 화상데이터 변환부(31)는, 스텝 S81에서 중간데이터로 변환한 원화상데이터의 프레임수 Fnum을, 재생프레임 관리부(34)에 공급하고, 재생프레임 관리부(34)는, 그 프레임수 Fnum을 취득한다.
그리고, 스텝 S83으로 진행하고, 재생프레임 관리부(34)는, 재생대상의 프레 임을 나타내는 변수 n을, 예를 들면, 1로 초기화하고, 처리대상의 프레임을 나타내는 프레임정보로서, 중간데이터 변환부(32)에 공급하여, 스텝 S84로 진행한다.
스텝 S84에서는, 센서제어부(33)가, 리시버(4)(도 2)의 출력으로부터, 사용자의 위치를 검출하고, 더구나, 그 사용자의 위치를, 사용자의 시점으로 설정하여, 중간데이터 변환부(32)에 공급한다.
그리고, 스텝 S85로 진행하고, 중간데이터 변환부(32)는, 재생프레임 관리부(34)로부터 공급되는 프레임정보에 근거하여, 처리대상이 제n 프레임인 것을 인식하고, 더구나, 센서제어부(33)로부터 공급되는 사용자의 시점에 근거하여, 중간데이터를, 처리대상인 제n 프레임의 제시용 화상데이터로 변환하여, 스텝 S86으로 진행한다.
스텝 S86에서는, 중간데이터 변환부(32)는, 제n 프레임의 제시용 화상데이터를, 디스플레이(6)에 공급하고 표시시켜, 스텝 S87로 진행한다.
스텝 S87에서는, 재생프레임 관리부(34)는, 변수 n이, 원화상데이터의 전체 프레임수 Fnum과 같은지 어떤지를 판정한다. 스텝 S87에서, 변수 n이, 전체 프레임수 Fnum과 같지 않다고 판정된 경우, 스텝 S88로 진행하고, 예를 들면, 사용자가, 화상처리를 종료하도록, 입력부(17)(도 3)를 조작했는지 어떤지를, CPU(12)(도 3)이 판정한다. 스텝 S88에서, 화상처리를 종료하도록, 입력부(17)가 조작되어 있지 않다고 판정된 경우, 스텝 S89로 진행하고, 재생프레임 관리부(34)는, 변수 n을 1만큼 인크리먼트하여, 대응하는 프레임정보를, 중간데이터 변환부(32)에 공급한다. 그리고, 스텝 S84로 되돌아가, 이하와 같은 처리가 반복된다.
한편, 스텝 S87에서, 변수 n이, 전체 프레임수 Fnum과 같다고 판정되거나, 또는, 스텝 S88에서, 화상처리를 종료하도록, 입력부(17)가 조작되었다고 판정된 경우, 처리를 종료한다.
이때, 도 40의 화상처리가, 과거에 실행되고, 이에 따라, 화상데이터 베이스(2)에 기억되어 있는 원화상데이터를 변환한 중간데이터가, 중간데이터 베이스(3)에, 이미 기억되어 있는 경우에는, 스텝 S81 및 S82의 처리는, 스킵할 수 있다.
다음에, 도 38의 실시예에서의 데이터 변환부(30)(를 구성하는 화상데이터 변환부(31) 및 중간데이터 변환부(32))의 처리에 대하여 설명한다.
이때, 화상데이터 베이스(2)에 기억된 원화상데이터는, 예를 들면, 도 41에 나타내는 바와 같이, 거의 등속 직선운동을 하고 있는 열차의 차창에 고정된 카메라에 의해 촬상된 것으로 한다. 도 41에 나타낸 경우에서는, 카메라에서는, 근경(예를 들면, 카메라로부터 비교적 가까이 있는 수목 등의 물체)과 원경(예를 들면, 카메라로부터 멀리 있는 하늘 등의 풍경)이 촬상되어 있다.
여기서, 도 41에서는, 열차가 주행하는 평면(혹은 그 평면과 평행한 평면) 상에서, 열차의 주행방향에 대하여 수직인 방향을 기선으로 하고, 그 기선에 대하여, 반시계회전 방향으로 각도 φ0만큼 기운 방향이 광축방향이 되도록, 카메라가 고정되어 있다. 이때, 열차가 주행하는 평면 상에서, 그 열차에 고정된 카메라의 렌즈중심으로부터 반시계회전 방향으로, 기선에 대하여 만들어지는 각도를, 이하, 적절히, 편각이라 한다. 이 편각은, 전술한 경도에 해당한다.
즉, 여기서는, 열차가, 평면 상을, 직선적으로 이동하는 것으로 하고 있기 때문에, 그 평면을, 지구의 적도 상의 평면이라고 생각하면, 열차에 고정된 카메라의 시점은, 위도방향으로 이동하고 있지 않고, 경도방향으로만 이동한다. 따라서, 그와 같은 카메라에 의해 촬상된 원화상데이터에 대해서는, 기본적으로는, 전술한 위도와 경도 중, 경도만으로 주목하면 되며, 위도는 무시할 수 있게 된다.
도 41에서는, 열차의 주행방향으로 향하여 우측에, 피사체가 되는 복수의 물체(예를 들면, 수목 등)가 있고, 더구나, 그 피사체가 되는 복수의 물체는, 열차의 주행방향을 따라 존재하고 있다. 따라서, 도 41의 실시예에서는, 피사체가 되는 복수의 물체, 열차의 주행궤적에 대하여 등거리의 위치에 존재하고 있다.
이 경우, 카메라의 광학중심을 지나는 기선 상에 있는 피사체의, 카메라에서 본 속도를 V0로 나타내는 것으로 하면, 그 기선으로부터 각도(편각) φ의 방향에 있는 피사체의, 카메라에서 본 속도는, V0cosφ로 나타낼 수 있다.
따라서, 카메라에 의해 촬상되는 화상데이터, 즉, 카메라의 광축과 수직인 가상스크린 상에 표시되는 화상데이터에 있어서는, 우측에 표시된 피사체가, 좌측에 표시된 피사체보다도 고속으로 이동한다.
도 41에서는, 열차가, 도면 상하방향으로 주행하고 있다. 따라서, 그 열차의 차창에 고정된 카메라에 의하면, 예를 들면, 도 42에 나타내는 바와 같이, 화상데 이터가 촬상된다.
즉, 지금의 경우, 열차는 등속 직선운동을 하고 있기 때문에, 그 열차에 고정되어 있는 카메라도 등속직선연동을 하고, 이에 따라, 카메라에서는, 그 렌즈중심이, 열차의 주행방향에 등간격으로 이동하면서, 각 프레임의 화상데이터가 촬상된다.
지금, 카메라로 촬상된 각 프레임의 화상데이터에 있어서, 어떤 편각 φ1의 방향으로 주목하면, 그 편각 φ1의 방향의 광선에 대응하는 화소값은, 각 프레임의 화상데이터에 존재한다. 따라서, 각 프레임의 화상데이터로부터, 편각 φ1의 방향의 광선에 대응하는 화소값을 모으는 것으로, 그 편각 φ1의 방향의 무한원으로부터 본 화상데이터인 중간데이터를 생성할 수 있다.
즉, 카메라로 촬상된 각 프레임의 화상데이터로부터, 편각 φ1의 방향에 있는 열의 화소(편각 φ1의 방향에 있는, 수직방향으로 나열되는 화소)의 나열을 적출하고, 각 프레임으로부터 적출한 1열의 화소의 화소값을, 프레임 순으로, 우측에서 좌측방향으로 나열함으로써, 편각 φ1의 방향의 무한원으로부터 본 화상데이터인 중간데이터를 생성할 수 있다.
그런데, 전술한 바와 같이, 카메라에서 촬상된 각 프레임의 화상데이터로부터, 편각 θ1의 방향에 있는 열의 화소를 적출하여 나열함으로써, 편각 φ1의 방향의 무한원으로부터 본 화상데이터(중간데이터)를 생성하면, 그 화상데이터는, 1프 레임의 사이에 카메라가 이동하는 이동거리에 대응하는 간격만큼, 화소가 존재하지 않는 것으로 되는 것이 있다.
즉, 1프레임 동안에 카메라가 이동하는 이동거리가, 1화소의 횡의 길이를 초과하는 경우, 어떤 프레임의 화상데이터에서의 편각 φ1의 방향에 있는 열의 화소와, 그 다음 프레임의 화상데이터에서의 편각 φ1의 방향에 있는 화소와의 사이에는, 1화소를 초과하는 간격이 생겨, 중간데이터로서의 화상데이터도, 그와 같은 간격이 비어진 것으로 된다.
그래서, 그와 같은 등간격이 생기는 것을 방지하기 위해, 카메라로 촬상된 각 프레임의 화상데이터로부터의 화소의 적출은, 행방향(수평방향)으로, 어느 정도의 폭이 있는 형태로 행할 수 있다.
즉, 카메라에서 촬상된 각 프레임의 화상데이터로부터는, 예를 들면, 도 42에 나타내는 바와 같이, 어떤 편각 φ1로부터, 미소각도 ±δφ의 범위의 방향에 있는 복수열의 화소를 적출할 수 있다. 지금, 이 편각 φ1에서, 미소각도 ±δφ의 범위의 방향에 있는 복수열의 화소로 되는 직사각형의 화상을, 편각 θ1에 대한 스트립화상(strip-like image)이라는 것으로 하면, 편각 φ1의 방향의 무한원으로부터 본 화상데이터인 중간데이터의 생성(재구성)은, 도 43에 나타내는 바와 같이, 카메라에서 촬상된 각 프레임의 화상데이터로부터, 편각 φ1에 대한 스트립화상이 적출되고, 프레임 순으로, 우측에서 좌측방향으로 배치됨으로써 행해진다.
이때, 도 43에 나타낸 중간데이터의 열방향(수직방향)의 길이는, 카메라에서 촬상된 화상데이터의 프레임의 화소의 행수(열방향의 화소수)로 결정되지만, 그 행방향(수평방향)의 길이는, 카메라로 촬상된 화상데이터의 프레임수에 의존한다.
도 38의 데이터 변환부(30)에서의 화상데이터 변환부(31)에서는, 전술한 바와 같이, 각 편각의 방향의 무한원으로부터 본 중간데이터가 생성된다.
즉, 지금, 열차에 고정된 카메라에서 촬상된 화상데이터가, 예를 들면, 도 44에 나타내는 바와 같이, 수목이 있는 풍경이, 화면 상을 좌측에서 우측방향으로 이동해 가는 것인 경우에는, 예를 들면, 도 45a 내지 도 45E에 나타내는 바와 같은 중간데이터가 생성된다.
여기서, 도 45a 내지 도 45E는, 도 45a에 나타내는 바와 같은 4개의 방향 #1 내지 #4의 무한원으로부터 본 화상데이터인 중간데이터를 나타내고 있다. 즉, 도 45b 내지 도 45E는, 도 45a에서의 방향 #1 내지 #4의 무한원 각각으로부터 본 화상데이터인 중간데이터를 나타내고 있다.
다음에, 도 46의 흐름도와, 도 47을 참조하여, 도 38의 화상데이터 변환부(31)가, 도 40의 스텝 S81에서 행하는 화상데이터 변환처리, 즉, 원화상데이터를 중간데이터로 변환하는 처리에 대하여 설명한다.
우선 처음에, 스텝 S101에서, 화상데이터 변환부(31)는, 화상데이터 베이스(2)에 기억된 원화상데이터의 프레임수를 카운트하는 변수 Fnum에, 초기값으로서의, 예를 들면 1을 셋트하여, 스텝 S102로 진행한다.
스텝 S102에서는, 화상데이터 베이스(2)에 기억된 원화상데이터를 촬상하였 을 때의 카메라의 시점(촬상포인트)으로부터, 주목촬상 포인트 Pc로 하는 것을 선택한다.
즉, 도 38의 실시예에서는, 화상데이터 베이스(2)에 기억된 원화상데이터는, 도 41 및 도 42에서 설명한 바와 같이, 등속 직선운동하는 열차에 고정된 카메라에 의해 촬상된 것이기 때문에, 도 47에 나타내는 바와 같이, 열차의 주행방향에 따른 직선 상에는, 다수의 촬상포인트가 존재한다. 스텝 S102에서는, 그 다수의 촬상포인트 중에서, 제Fnum 프레임의 원화상데이터를 카메라로 촬상하였을 때의 촬상포인트가, 주목촬상 포인트 Pc로서 선택된다. 이때, 도 38에서는, 제n-1 프레임, 제n 프레임, 및 제n+1 프레임의 3개의 프레임 각각에 대한 촬상포인트를 나타내고 있다.
여기서, 도 38의 실시예에서는, 화상데이터 베이스(2)에는, 열차에 고정된 카메라에 의해 촬상된 원화상데이터인 것 외, 도 7의 화상생성장치에서 찰상된 원화상데이터에서인 경우와 마찬가지로, 현실세계에 미리 설정된 3차원 좌표계인 촬상시 좌표계에서의, 열차에 고정된 카메라의 촬상포인트도 기억되어 있는 것으로 한다. 이 경우, 스텝 S102에서, 화상데이터 변환부(31)는, 화상데이터 베이스(2)로부터, 제Fnum 프레임의 화상데이터에 대한 촬상포인트를, 주목촬상 포인트 Pc로서 판독한다. 이때, 도 47에서는, 촬상시 좌표계로서, 좌측방향으로 x축이, 위쪽방향으로 y축이, 지면과 수직인 바로앞 방향으로 z축이, 각각 잡혀져 있다.
그 후, 스텝 S103으로 진행하고, 화상데이터 변환부(31)는, 주목촬상 포인트 Pc에 대하여, 가상스크린을 설정하고, 가상스크린 상의 수직방향의 화소의 열 중, 아직 주목열로서 선택하고 있지 않은 화소열을, 주목열로서 선택한다.
즉, 화상데이터 변환부(31)는, 도 47에 나타내는 바와 같이, 주목촬상 포인트 Pc에 대하여, 그 주목촬상 포인트 Pc로부터, 카메라의 광축방향으로 향하여, 소정의 거리 L만큼 멀어진 위치에, 열차에 고정된 카메라의 광축과 직교하는 직사각형 형상의 평면을, 가상스크린으로서 설정한다. 그리고, 화상데이터 변환부(31)는, 가상스크린 상의 화소 중, 예를 들면, 좌측에서 우측방향의 순서로, 아직 주목열로서 선택하고 있지 않는 화소열을, 주목열로서 선택한다.
여기서, 도 47에서는, 카메라의 광축과 기선이 일치하고 있지만, 즉, 카메라의 광축이, 기선으로부터 0도의 방향으로 되어 있지만, 카메라의 광축은, 기선으로부터 임의의 편각 θ0의 방향으로 잡는 것이 가능하다. 이때, 카메라의 광축의 방향은, 기선으로부터의 편각 θ0이 몇도의 방향이어도 되지만, 그 편각 θ0이 몇도인지는, 여기서는, 데이터 변환부(30)에서, 미리 인식되어 있는 것으로 한다.
스텝 S103에서 주목열이 선택된 후에는, 스텝 S104로 진행하고, 화상데이터 변환부(31)는, 그 주목열을 구성하는 화소 중, 예를 들면 최상행의 화소를 주목화소 Ps로서 선택한다.
여기서, 주목화소 Ps는, 주목열을 구성하는 화소 중의 최상행의 화소에 한정되는 것은 아니며, 임의의 행의 화소를, 주목화소로서 선택하는 것이 가능하다.
스텝 S104에서 주목화소 Ps가 선택된 후에는, 스텝 S105로 진행하고, 화상데 이터 변환부(31)는, 주목촬상 포인트 Pc를 시점으로 하고, 주목화소 Ps를 종점으로 하는 벡터 v를 구하여, 스텝 S106으로 진행한다.
스텝 S106에서는, 화상데이터 변환부(31)는, 도 47에 나타내는 바와 같이, 스텝 S105에서 구해진 벡터 v와 직교하고, 촬상시 좌표계 상의 소정의 점 Pf를 지나는 평면 α를 구하여, 스텝 S107로 진행한다.
스텝 S107에서는, 화상데이터 변환부(31)는, 스텝 S105에서 구한 벡터 v의, 기선에 대한 편각 φ를 구하고, 스텝 S108로 진행한다. 즉, 원래라면, 도 27의 실시예에서의 경우와 마찬가지로, 벡터 v의 위도와 경도를 구할 필요가 있다. 여기서는, 전술한 바와 같이, 경도방향으로밖에 이동하지 않은 카메라에 의해 원화상데이터가 촬상되어 있으므로, 위도는 무시할 수 있고, 경도만을 고려하면 충분하다. 그래서, 스텝 S107에서는, 벡터 v의 경도에 해당하는, 기선에 대한 편각 φ가 구해진다.
여기서, 벡터 v의 편각 φ는, 스텝 S106에서 구해진 평면 α의 법선의 편각 φ라고도 할 수 있다. 또한, 평면 α의 법선의 방향은, 위도와 경도로 특정되지만, 여기서는, 전술한 바와 같이, 위도는 무시할 수 있다(위도는, 임의의 고정의 값으로 할 수 있음). 따라서, 소정의 점 Pf를 지나는 평면 α는, 그 법선의 경도에 해당하는 편각 φ에 의해 특정할 수 있으므로, 이 편각 φ에 의해 특정되는 평면 α를, 이하, 적절히, 평면 I(φ)라고도 기술한다.
이때, 편각 φ의 부호에 대해서는, 촬상포인트를 중심으로 하여, 열차가 주 행하는, 평면(도 47의 실시예에서는, xy 평면) 내에서의, 좌회전 방향을, 양으로 한다.
스텝 S108에서는, 화상데이터 변환부(31)는, 도 47에 나타내는 바와 같이, 주목촬상 포인트 Pc와 주목화소 Ps를 연결하는 직선 Lp를 구한다. 더구나, 스텝 S108에서는, 화상데이터 변환부(31)는, 직선 Lp와, 스텝 S106에서 구한 평면 α(I(φ))와의 교점 Px를 구하여, 스텝 S109로 진행하고, 그 점 Px의, 평면 α 상에서의 좌표 (xα, yα)를 구한다.
여기서, 스텝 S109에서는, 평면 I(φ) 상에서, 예를 들면, 그 평면 I(φ)가 반드시 지나는 소정의 점 Pf를 원점으로 함과 동시에, 촬상시 좌표계의 x축과 z축을 평면 I(φ) 상에 사상하여 얻어지는 축을, 각각 x축과 y축으로 하는 2차원 좌표계가 정의되고, 그 2차원 좌표계에서의 점 Px의 좌표 (xα, yα)가 구해진다. 이때, 평면 I(φ) 상에 정의되는 2차원 좌표계는, 전술한 것에 한정되지 않는다.
그 후, 스텝 S110으로 진행하고, 화상데이터 변환부(31)는, 가상스크린 상의 제Fnum 프레임의 원화상데이터의 주목열을, 평면 I(φ) 상에 사영한다.
즉, 지금, 평면 I(φ) 상의 점 Px의 위치의 화소의 화소값을, 평면 I(φ)1 O와, 평면 I(φ) 상의 점 Px의 좌표를 나타내는(xα, yα) 것에 의해, I(φ)(x α, yα)로 나타내는 것으로 함과 동시에, 주목열이, N화소로 구성되는 것으로 한다. 이 경 우, 화상데이터 변환부(31)는, 가상스크린 상의 제Fnum 프레임의 원화상데이터의 주목열에서의 제한줄의 화소의 화소값을, 평면 I(φ) 상의 화소값 I(φ)(xα, yα)에, 주목열에서의 제2행의 화소의 화소값을, 평면 I(φ) 상의 화소값 I(φ)(xα, yα+1)에,···,주목열에서의 제N행의 화소의 화소값을, 평면 I(φ) 상의 화소값 I(φ)(xα, yα+(N-1))로, 각각 셋트한다.
그리고, 스텝 S111로 진행하고, 화상데이터 변환부(31)는, 주목촬상 포인트 Pc에 대하여 설정된 가상스크린 상의 원화상데이터의 모든 화소열을 주목열로 했는지 어떤지를 판정하고, 아직, 주목열로 하고 있지 않지만 화소열이 있다고 판정된 경우, 스텝 S103으로 되돌아가, 이하와 같은 처리가 반복된다.
또한, 스텝 S111에서, 가상스크린 상의 모든 화소열을 주목열로 하였다고 판정된 경우, 스텝 S112로 진행하고, 화상데이터 변환부(31)는, 제Fnum 프레임의 다음 프레임의 원화상데이터가 존재하는지 어떤지를, 화상데이터 베이스(2)를 참조함으로써 판정한다. 스텝 S112에서, 제Fnum 프레임의 다음 프레임의 원화상데이터가 존재한다고 판정된 경우, 스텝 S113으로 진행하고, 화상데이터 변환부(31)는, 변수 Fnum을 1만큼 인크리먼트하여, 스텝 S102로 되돌아가, 이하, 동일한 처리를 반복한다.
또한, 스텝 S112에서, 제Fnum 프레임의 다음 프레임의 원화상데이터가 존재하지 않는다고 판정된 경우, 즉, 화상데이터 베이스(2)에 기억된 모든 프레임의 화상 데이터를, 각 편각 φ의 평면 I(φ)에 정사영한 화상데이터로서의 중간데이터가 얻어진 경우, 처리를 종료한다.
이때, 이상의 화상데이터 변환처리에 의해 얻어진 중간데이터는, 화상데이터 변환부(31)로부터 중간데이터 베이스(3)에 공급되어 기억된다.
또한, 도 46의 화상데이터 변환처리에 있어서 최종적으로 얻어진 원화상데이터의 프레임수 Fnum은, 도 40에서 설명한 바와 같이, 스텝 S82에서, 화상데이터 변환부(31)로부터 재생프레임 관리부(34)에 공급된다.
다음에, 도 48a 및 도 48b는, 도 46의 화상데이터 변환처리에 의해 생성되는 중간데이터의 포맷을 모식적으로 나타내고 있다.
도 46의 화상데이터 변환처리에 의해 생성되는 중간데이터는, 평면 I(φ) 상에, 편각 φ로 규정되는 방향의 무한원으로부터 피사체를 본 경우의 화상데이터로 되어 있고, 따라서, 각 값의 편각 φ 마다 존재하므로, 도 48a에 나타내는 바와 같은, 편각 φ의 값으로 구분되는 테이블(이하, 적절히, 편각테이블이라 함)로 표현할 수 있다.
즉, 도 46의 화상데이터 변환처리는, 기본적으로는, 도 27의 화상데이터 변환처리에서의 위도를 무시한 처리와 동일하고, 그 결과 얻어지는 중간데이터는, 도 27의 화상데이터 변환처리에 의해 얻어지는 도 29a의 위도경도 테이블에서의 위도를 무시한 것으로 되어 있다. 즉, 도 46의 화상데이터 변환처리에 의해 얻어지는 도 48a의 편각테이블은, 도 29a의 위도경도 테이블에서의 위도방향의 축이 없고, 경도에 해당하는 편각방향의 축만이 있는 것으로 되어 있다.
여기서, 도 48a의 실시예에서는, 편각 φ가, 최소값 φmin으로부터 최대값 φmax의 범위의 1도 스텝으로 변화되는 평면 I(φ)마다, 각 편각 φ로 규정되는 방향의 무한원으로부터 피사체를 본 경우의 화상데이터가, 편각테이블의 각 셀에 등록되어 있다. 이때, 편각 φ를, 몇도 스텝으로 하거나, 그 스텝 폭은, 도 29a의 위도경도 테이블에서의 경우와 마찬가지로 특히 한정되는 것은 아니다. 또한, 편각테이블에서의 편각 φ의 최소값 φmin 및 최대값 φmax는, 열차에 고정된 카메라의 광축의 편각, 및 그 카메라의 수평방향의 화각에 의존한다.
도 48a의 편각테이블의 각 셀에는, 그 셀에 대응하는 편각 φ로 규정되는 방향의 무한원으로부터 피사체를 본 경우의 화상데이터, 즉, 평면 I(φ) 상에(위도를 무시하여) 사영된 원화상데이터의 화소의 화소값이, 그 평면 I(φ) 상에 정의된 2차원 좌표계의 각 x 좌표 xα와 각 y 좌표 yα마다 등록되어 있다. 즉, 도 48a의 편각테이블의 각 셀에는, 예를 들면, 도 48b에 나타내는 바와 같이, 평면 I(φ) 상에 정의된 2차원 좌표계의 x 좌표 xα와 y 좌표 yα의 값으로 구분된 테이블(화소값 테이블)이 등록되어 있고, 그 화소값 테이블의 셀에는, 그 셀에 대응하는 x 좌표 xα와 y 좌표 yα로 규정되는 점에 사영된 원화상데이터의 화소의 화소값 p(xα, yα)가 등록되어 있다.
이때, 도 48b에서, x1과 y1은, 도 29b에서의 경우와 마찬가지로, 원화상데이터의 화소를 평면 I(φ) 상에 정사영한 점의, 최소의 x 좌표와 y 좌표를, 각각 나 타낸다. 또한, x2와 y2도, 도 29b에서의 경우와 마찬가지로, 원화상데이터의 화소를 평면 I(φ) 상에 정사영한 점의, 최대의 x 좌표와 y 좌표를, 각각 나타낸다.
그런데, 전술한 바와 같이, 열차에 고정된 카메라로 촬상된 각 프레임의 원화상데이터로부터, 어떤 편각 φ의 방향에 있는 열의 화소를, 평면 I(φ)에 사영함으로써, 편각 φ의 방향의 무한원으로부터 본 화상데이터인 중간데이터를 생성한 경우, 그 중간데이터로서의 화상데이터에 있어서는, 1프레임 동안에 카메라가 이동하는 이동거리에 대응하는 간격만큼, 화소가 존재하지 않은 것으로 되는 것, 즉, 화소값의 결락이 생기는 경우가 있다.
그래서, 도 38의 화상처리장치(1)에서도, 도 5의 화상처리장치(1)에서의 경우와 마찬가지로, 화소값 보간처리를 행하도록 할 수 있다.
그래서, 도 49의 흐름도를 참조하여, 도 38의 양상처리장치(1)에서 행해지는 화소값 보간처리에 대하여 설명한다. 이때, 이 화소값 보간처리는, 도 32에서의 경우와 마찬가지로, 화상데이터 변환부(31)로 행하게 해도 되며, 중간데이터 변환부(32)로 행하게 해도 된다. 여기서는, 예를 들면, 화상데이터 변환부(31)가 행하는 것으로 하여, 화소값 보간처리를 설명한다.
도 49의 화소값 보간처리에서는, 우선 처음에, 스텝 S121에서, 화상데이터 변환부(31)가, 편각을 나타내는 변수 φ에, 초기값으로서의, 예를 들면, 그 최소값인 φmin을 셋트함과 동시에, 평면 I(φ)의 x 좌표를 나타내는 변수 xα에, 초기값으로서의, 예를 들면, 그 최소값인 x1을 셋트한다.
그리고, 스텝 S122로 진행하고, 양상데이터 변환부(31)는, 중간데이터 I(φ)(xα, y1)에, 화소값이 셋트되어 있는지 어떤지를, 도 32의 스텝 S42에서의 경우와 동일하게 하여 판정한다.
여기서, 전술한 경우에는, 스텝 S122에서 화소값이 셋트되어 있는지 어떤지를 판정하는 대상(이하, 적절히, 화소값 판정대상이라 함)을, 중간데이터 I(φ)(xα, y1)로 하였지만, 즉, 평면 I(φ) 상의 좌표 (xα, y1)의 화소로 하였지만, 화소값 판정대상으로서는, y 좌표 yα가, 그 최소값 y1로부터 최대값 y2의 범위의 임의의 값의 화소를 채용할 수 있다.
즉, 도 46 및 도 47에서 설명한 화상데이터 변환처리에 의해 얻어지는 중간데이터에 있어서는, 평면 I(φ) 상의 좌표 (xα, y1) 내지 (xα, y2 )로 표시되는 열에는, 도 46의 스텝 S110에서, 한번에, 원화상데이터의 화소값이 셋트된다. 따라서, 평면 I(φ) 상의 좌표 (xα, y1) 내지 (xα, y2)로 표시되는 열에서의, 어떤 1화소에 화소값이 셋트되어 있지 않은 경우에는, 그 열의 다른 대상으로도 화소값이 셋트되어 있지 않게 되기 때문에, 화소값 판정대상으로서는, y 좌표 yα가 그 최소값 y1로부터 최대값 y2의 범위의 임의의 값의 화소를 채용할 수 있다.
스텝 S122에서, 중간데이터 I(φ)(xα, y1)에, 화소값이 셋트되어 있다고 판정된 경우, 즉, 화소값이 결락되어 있지 않은 경우, 스텝 S123 및 S124를 스킵하여, 스텝 S125로 진행한다.
또한, 스텝 S122에서, 중간데이터 I(φ)(xα, y1)에, 화소값이 셋트되어 있지 않다고 판정된 경우, 즉, 화소값이 결락되어 있는 경우, 스텝 S123으로 진행하고, 화상데이터 변환부(31)는, φ-Δφ<φ'<φ+Δφ의 범위의 편각 φ'로 규정되는 평면 I(φ') 상의 점 (xα, y1) 중에서, 화소값이 셋트되어 있는 것을 탐색(검색)한다.
여기서, Δφ로서는, 예를 들면, 도 32에서의 경우와 마찬가지로, 작은 양의 정수값이 채용된다.
그 후, 스텝 S124로 진행하고, 화상데이터 변환부(31)는, 스텝 S123에서 탐색된, 화소값이 셋트되어 있는 중간데이터 I(φ')(xα, y1)의 열의 각 화소값 I(φ')(xα, y1) 내지 I(φ')(xα, y2)를, 결락되어 있는 화소값인 중간데이터 I(φ)(xα, yα)의 열의 각 화소값 I(φ)(xα, y1) 내지 (x α, y2)에 셋트하여, 스텝 S125로 진행한다. 이때, 원화상데이터의 프레임의 수직방향의 화소수가, 전술한 바와 같이 N화소이면, y2는, y1+(N-1)로 표시된다.
여기서, 스텝 S123에서, φ-Δφ<φ'<φ+Δφ의 범위의 편각 φ'로 규정되는 평면 I(φ') 상의 점 (xα, y1) 중에서, 화소값이 셋트되어 있는 것이 복수 발견된 경우에는, 스텝 S124에서는, 화상데이터 변환부(31)는, 그 중에서, 예를 들면, 편각의 차의 절대치 │φ-φ'│가 가장 작은 것을 선택하고, 그 선택한 I(φ')(xα, y1)의 열의 각 화소값 I(φ')(xα, y1) 내지 I(φ')(xα, y 2)를, 각 화소값 I(φ)(xα, y1) 내지 (xα, y2)로 셋트한다.
또한, 스텝 S123에서, φ-Δφ<φ'<φ+Δφ의 범위의 편각 φ'로 규정되어 있는 평면 I(φ') 상의 점 (xα, y1) 중에서, 화소값이 셋트되어 있는 것이 발견되지 않았던 경우에는, 스텝 S124에서는, 화상데이터 변환부(31)는, 평면 I(φ) 상의 화소값이 셋트되어 있는 화소 중에서, 좌표 (xα, y1)과 가장 가까운 화소를 검색하고, 그 화소의 열의 각 화소의 화소값을, 각 화소값 I(φ)(xα, y1) 내지 (xα , y2)로 셋트한다.
이때, 도 49의 화소값 보간처리에서도, 도 32에서의 경우와 마찬가지로, 평면 I(φ) 상의, 화소값이 셋트되어 있지 않은 점 (xα, yα)에, 화소값이 보간되기 때문에, 그 처리가 진행하여 가면, 화소값이 보간된 점에서의 화소값에 의해, 더구나, 다른 점에서의 화소값이 보간되는 것이 생길 수 있다. 이것을 방지하기 위해서는, 예를 들면, 도 32에서의 경우와 마찬가지로, 화소값의 보간이 된 점에, 보간이 된 것을 나타내는 보간플래그를 부가하도록 하고, 보간플래그가 부가되어 있는 점에서의 화소값은, 보간에 사용하지 않도록 할(스텝 S12에서의 탐색의 대상 외로 함) 필요가 있다.
스텝 S125에서는, 화상데이터 변환부(31)가, 평면 I(φ) 상의 x 좌표를 나타내는 변수 xα가, 그 최대값인 x2와 같은지 어떤지를 판정한다. 스텝 S125에서, x 좌표 xα가, 최대값 x2와 같지 않다고 판정된 경우, 스텝 S126으로 진행하고, 화상 데이터 변환부(31)는, x 좌표 xα를 1만큼 인크리먼트하여, 스텝 S122로 되돌아가, 이하, 동일한 처리를 반복한다.
또한, 스텝 S125에서, x 좌표 xα가, 최대값 x2와 같다고 판정된 경우, 스텝 S127로 진행하고, 화상데이터 변환부(31)는, x 좌표 xα를, 그 최소값인 x1로 리셋트하여, 스텝 S128로 진행한다.
스텝 S128에서는, 화상데이터 변환부(31)는, 편각을 나타내는 변수 φ가, 그 최대값인 φmax와 같은지 어떤지를 판정한다. 스텝 S128에서, 편각 φ가, 최대값 φmax와 같지 않다고 판정된 경우, 스텝 S129로 진행하고, 화상데이터 변환부(31)는, 편각 φ를 1도만큼 인크리먼트하여, 스텝 S122로 되돌아가, 이하와, 동일한 처리를 반복한다.
또한, 스텝 S128에서, 편각 φ가, 최대값 φmax와 같다고 판정된 경우, 처리를 종료한다.
도 49의 화소값 보간처리에 있어서도, 도 32에서의 경우와 마찬가지로, 평면 I(φ)의 어떤 열의 화소값 I(φ)(xα, y1) 내지 I(φ)(xα, y2)가 결락되어 있는 경우에는, 화소값이 셋트되어 있다, 편각이 보다 가까운 다른 평면 I(φ')에서의 동일열의 화소값 I(φ')(xα, y1) 내지 I(φ')(xα, y2)에 의해, 그 결락되어 있는 화소값 I(φ)(xα, y1) 내지 I(φ)(xα, y2)가 보간된다.
이때, 도 49의 화소값 보간처리에 의하면, 도 42에서 설명한 바와 같이, 각 프레임의 원화상데이터로부터, 동일한 편각방향에 대한 스트립화상을 적출하고, 그 스트립화상을, 프레임 순으로, 우측에서 좌측방향으로 배치하여 얻어지는 것과 동일한 중간데이터가 얻어진다. 따라서, 화상데이터 변환부(31)에서, 도 42에서 설명한 바와 같이, 스트립화상에 의해 중간데이터를 생성하는 경우에는, 화소값의 결락은 생기지 않기 때문에, 도 49의 화소값 보간처리는, 행할 필요가 없다.
또한, 도 49의 화소값 보간처리에 의해 얻어진 중간데이터에 대해서는, 전술한 클래스 분류 적응처리, 그 밖의 화상처리를 시행하는 것이 가능하다.
더구나, 중간데이터의 포맷으로서는, 도 48a 및 도 48b에서 설명한 포맷인 것 외, 도 35a 및 도 35b에서의 경우와 동일한 포맷을 채용하는 것이 가능하다.
다음에, 도 50의 흐름도와, 도 51을 참조하여, 도 38의 중간데이터 변환부(32)가, 도 40의 스텝 S85에서 행하는 중간데이터 변환처리, 즉, 중간데이터를, 사용자의 시점에서 본 제n 프레임의 화상데이터(제시용 화상데이터)로 변환하는 처리에 대하여 설명한다.
도 50의 중간데이터 변환처리에 있어서도, 도 36에서의 경우와 마찬가지로, 디스플레이(6)(도 2)에, 사용자의 시점에 따른 화상을 표시하기 위한 3차원 좌표계로서의 표시시 좌표계가 상정된다. 이때, 표시시 좌표계로서는, 예를 들면, 화상데이터 베이스(2)에 기억된 원화상데이터를 중간데이터로 변환할 때에 사용된 촬상시 좌표계를, 그대로 채용할 수 있다.
그리고, 우선 처음에, 스텝 S141에서, 중간데이터 변환부(32)는, 도 51에 나타내는 바와 같이, 표시시 좌표계에서의, 제n 프레임의 촬상포인트 Pc에 대하여, 사 용자의 시점 Pc'를 설정한다.
즉, 도 50의 중간데이터 변환처리에서는, 지금 처리대상으로 되어 있는 프레임의 촬상포인트 Pc를 기준으로서 처리가 행해지게 되어 있고, 그 때문에, 스텝 S141에서는, 지금 재생대상으로 되어 있는 프레임의 촬상포인트 Pc를 기준으로서, 사용자의 시점 Pc'가 설정된다.
구체적으로는, 중간데이터 변환부(32)에는, 센서제어부(33)로부터, 현실세계에서의 사용자의 시점이 공급된다. 중간데이터 변환부(32)는, 현실세계에서의 소정의 위치를, 사용자의 시점의 기준위치로서, 센서제어부(33)로부터의 사용자의 시점이, 기준위치로부터 얼마만큼 이동한 위치에 있는지를 나타내는 이동정보를 구한다. 여기서, 사용자의 시점의 기준위치로서는, 사용자가, 디스플레이(6)에 표시된 화상을 시청하는 일반적인 위치, 즉, 예를 들면, 디스플레이(6)의 정면방향 상의 임의의 점을 채용할 수 있다.
중간데이터 변환부(32)는, 이동정보를 구하면, 도 51에 나타내는 바와 같이, 표시시 좌표계에서, 제n 프레임의 촬상포인트 Pc로부터, 그 이동정보만큼 이동한 점을, 촬상포인트 Pc에 대한 사용자의 시점 Pc'으로서 설정한다.
이때, 도 50의 중간데이터 변환처리에 있어서도, 도 46의 화상데이터 변환처리에서의 경우와 마찬가지로, 위도방향은 무효로 된다. 따라서, 도 50의 중간데이터 변환처리에 있어서, 예를 들면, 도 51에 나타내는 바와 같이, 도 47의 촬상시 좌표계와 같은 x축, y축, 및 z축을 잡은 표시시 좌표계가 상정되어 있다고 하면, 이동정보에어서의, 위도방향에 영향을 주는 y축방향 및 z축방향의 성분은 무효로 된다(예를 들면 0으로 취급됨). 이것은, 사용자가, 표시시 좌표계의 y축방향 또는 z축방향으로 이동해도, 사용자의 시점이 이동하였다고는 인정되지 않는 것을 의미한다. 이것은, 사용자의 시점이동에 대응하는 데이터가 작성되어 있지 않기 때문이다(작성되어 있으면, z축, y축방향의 이동성분은, 유효하다고 취급되어도 됨). 즉, 이 경우, 사용자의 시점이 이동하였다고 인정되기 위해서는, 사용자가, 적어도, 표시시 좌표계의 x축방향으로 이동해야 한다. 여기서, 본 실시예에서는, 표시시 좌표계(촬상시 좌표계도 동일)에서의 x축방향은, 카메라의 이동방향(카메라가 고정된 열차의 주행방향)에 일치하고 있다.
중간데이터 변환부(32)는, 이상과 같이 하여, 표시시 좌표계에서의, 촬상포인트 Pc에 대한 사용자의 시점 Pc'를 설정하면, 스텝 S142로 진행하고, 도 51에 나타내는 바와 같이, 촬상포인트 Pc에서의 카메라의 광축과, 제n 프레임에 표시되어 있는 피사체와의 교점 Pk를 구한다.
이때, 여기서는, 설명을 간단히 하기 위해, 카메라가 고정된 열차의 주행궤적과 피사체와의 사이의 거리 D는, 일정하다고 하고, 더구나, 중간데이터 변환부(32)에서, 미리 인식되어 있는 것으로 한다. 또한, 촬상포인트 Pc에서의 카메라의 광축의 편각 φ0도, 중간데이터 변환부(32)에서, 미리 인식되어 있는 것으로 한다. 이 경우, 촬상포인트 Pc에서의 카메라의 광축과, 제n 프레임에 표시되어 있는 피사체와의 교점 Pk는, 촬상포인트 Pc, 거리 D 및 촬상포인트 Pc에서의 카메라의 광축의 편각 φ0으로부터 구할 수 있다. 그 후, 스텝 S143으로 진행하고, 중간데이터 변환부(32)는, 도 51에 나타내는 바와 같이, 사용자의 시점 Pc'를 시점으로 함과 동시에, 교점 Pk를 종점으로 하는 벡터 v'를 구하여, 스텝 S144로 진행한다. 스텝 S144에서는, 중간데이터 변환부(32)는, 사용자의 시점 Pc'에 대하여, 벡터 v'의 방향을 시선방향으로서, 그 벡터 v'와 직교하고, 사용자의 시점 Pc'로부터 거리 L만큼 멀어진 위치에 가상스크린을 설정하여, 스텝 S145로 진행한다.
스텝 S145에서는, 중간데이터 변환부(32)는, 사용자의 시점 Pc'에 대하여 설정한 가상스크린 상의 수직방향의 화소의 열 중, 아직 주목열로서 선택하고 있지 않은 화소열을, 주목열로서 선택한다.
스텝 S145에서 주목열이 선택된 후에는, 스텝 S146으로 진행하고, 중간데이터 변환부(32)는, 예를 들면, 도 46의 스텝 S104에서의 경우와 마찬가지로, 주목열을 구성하는 화소 중의 최상행의 화소를 주목화소 Ps로서 선택한다.
여기서, 주목화소 Ps는, 주목열을 구성하는 화소 중의 최상행의 화소에 한정되는 것은 아니며, 임의의 행의 화소를, 주목화소로서 선택하는 것이 가능하다.
스텝 S146에서 주목열이 선택된 후에는, 스텝 S147로 진행하고, 중간데이터 변환부(32)는, 도 51에 나타내는 바와 같이, 사용자의 시점 Pc'를 시점으로 하고, 주목화소 Ps를 종점으로 하는 벡터 v를 구하여, 스텝 S148로 진행한다.
스텝 S148에서는, 중간데이터 변환부(32)는, 도 51에 나타내는 바와 같이, 스텝 S147에서 구해진 벡터 v와 직교하고, 촬상시 좌표계와 동일한 표시시 좌표계 상의 소정의 점 Pf를 지나는 평면 α를 구하여, 스텝 S149로 진행한다.
스텝 S149에서는, 중간데이터 변환부(32)는, 스텝 S147에서 구한 벡터 v의, 기선에 대한 편각 φ, 즉, 스텝 S148에서 구한 평면 α의 법선의, 기선에 대한 편각 φ를 구하여, 스텝 S150으로 진행한다.
스텝 S150에서는, 중간데이터 변환부(32)는, 도 51에 나타내는 바와 같이, 사용자의 시점 Pc'와 주목화소 Ps를 연결하는 직선 Lp를 구한다. 더구나, 스텝 S150에서는, 중간데이터 변환부(32)는, 직선 Lp와, 스텝 S151에서 구한 평면 α, 즉, 법선의, 기선에 대한 편각이, 스텝 S148에서 구한 φ인 평면 I(φ)와의 교점 Px를 구하여, 스텝 S151로 진행하고, 그 점 Px의, 평면 I(φ) 상에서의 좌표 (xα, yα )를 구한다.
그 후, 스텝 S152로 진행하고, 중간데이터 변환부(32)는, 가상스크린의 주목열의 화소의 각 화소값으로서, 평면 I(φ) 상의 점 Px의 열에서의 각 화소값을 셋트한다.
즉, 가상스크린 상의 주목열이, N화소로 구성되는 것으로 하면, 중간데이터 변환부(32)는, 가상스크린 상의 주목열에서의 제1행의 화소의 화소값으로서, 평면 I(φ) 상의 화소값 I(φ)(xα, yα)를, 주목열에서의 제2행의 화소의 화소값으로서, 평면 I(φ) 상의 화소값 I(φ)(xα, yα+1)를, ···, 주목열에서의 제N행의 화소의 화소값으로서, 평면 I(φ) 상의 화소값 I(φ)(xα, yα+(N-1))를, 각각 셋트한다.
그리고, 스텝 S153으로 진행하고, 중간데이터 변환부(32)는, 사용자의 시점 Pc'에 대하여 설정된 가상스크린 상의 모든 화소열(수직방향의 화소의 나열)을 주목열로 했는지 어떤지를 판정하고, 아직, 주목열로 하고 있지 않지만 화소열이 있다고 판정된 경우, 스텝 S145로 되돌아가, 이하, 동일한 처리가 반복한다 .
또한, 스텝 S153에서, 가상스크린 상의 모든 화소열을 주목열로 하였다고 판정된 경우, 즉, 가상스크린 상에, 사용자의 시점에서 본 제n 프레임의 화상데이터(제시용 화상데이터)가 형성된 경우, 처리를 종료한다.
이상과 같이 하여 얻어진 제n 프레임의 제시용 화상데이터는, 전술한 도 40의 스텝 S86에서, 디스플레이(6)에 표시된다.
따라서, 디스플레이(6)에는, 사용자의 시점에서 피사체를 본 경우의 화상데이터가 표시되게 된다.
이상과 같이, 도 38의 화상처리장치(1)에 의하면, 카메라를 거의 등속 직선운동시키면서 촬상된 원화상데이터로부터, 도 5의 화상처리장치(1)에서의 경우와 마찬가지로, 용이하게, 사용자의 시점에 따른 화상데이터를 생성할 수 있다. 즉, 사용자가, 그 시점을 움직인 경우에, 사용자가 현실세계에서 피사체를 관찰하고 있 는 경우에 사용자의 시각에 비치는 것과 동일한 화상을, 디스플레이(6)에 표시할 수 있다.
그런데, 도 38의 화상처리장치(1)에서, 원화상데이터를, 사용자의 시점에서 본 제시용 화상데이터로 변환하기 위해서는, 그 원화상데이터가 카메라에 의해 촬상되었을 때의 여러가지의 촬상조건이 필요하게 된다.
여기서, 원화상데이터를, 사용자의 시점에서 본 제시용 화상데이터로 변환하기 위해서는, 도 46에서 설명한 화상데이터 변환처리, 및 도 50에서 설명한 중간데이터 변환처리로부터, 촬상조건으로서, 적어도, 원화상데이터를 촬상하는 카메라가 고정된 열차의 주행궤적과 피사체와의 사이의 거리(카메라와 피사체와의 사이의, 카메라의 이동방향과 수직인 방향에 따른 거리) D나, 촬상포인트 Pc에서의 카메라의 광축의 편각(광축의 방향) φ0, 각 프레임의 촬상포인트 Pc가 필요하다.
단, 본 실시예에서는, 열차, 나아가서는, 그 열차에 고정되어 있는 카메라는, 등속 직선운동하는 것으로 하고 있기 때문에, 각 프레임의 촬상포인트 Pc는, 어떤 프레임의 촬상포인트가 알려져 있으면, 다른 프레임의 촬상포인트는, 카메라가 등속 직선운동하는 빠르기로부터(카메라의 이동속도) 구할 수 있다.
그래서, 여기서는, 각 프레임의 촬상포인트 대신에, 카메라의 이동속도를, 촬상조건으로 하는 것으로 한다.
또한, 원화상데이터를, 사용자의 시점에서 본 제시용 화상데이터로 변환하기 위해 적어도 필요한, 전술한 촬상조건을, 이하, 적절히, 최저촬상조건이라고 한다.
최저촬상조건은, 원화상데이터의 촬상시에 센서 등에 의해 취득하면 된다.
최저촬상조건이, 미리 알려져 있지 않은 경우에는, 도 38의 화상처리장치(1)에 있어서, 전술한 바와 같이, 원화상데이터를, 사용자의 시점에서 본 제시용 화상데이터로 변환할 수 있다.
한편, 최저촬상조건이 알려져 있지 않은 경우, 원화상데이터를, 사용자의 시점에서 본 제시용 화상데이터로 변환하기 위해서는, 우선, 최저촬상조건을 구할 필요가 있다.
그래서, 도 3의 컴퓨터(1)에는, 화상데이터 베이스(2)에 기억된 원화상데이터를, 사용자의 시점에서 본 제시용 화상데이터로 변환하는 프로그램인 것 외, 그 원화상데이터로부터, 최저촬상조건을 구하는 화상처리를 행하는 프로그램도 기억시킬 수 있다.
도 52는, 도 3의 컴퓨터(1)가, 최저촬상조건을 구하는 화상처리를 행하는 프로그램을 실행함으로써 실현되는 화상처리장치의 기능적 구성예를 나타내고 있다.
도 52의 실시예에서는, 화상처리장치로서의 컴퓨터(1)는, 촬상조건 연산부(91)로 구성되어 있다.
촬상조건 연산부(91)는, 화상데이터 베이스(2)로부터, 등속 직선운동하는 열차에 고정된 카메라에 의해 촬상된 원화상데이터를 판독하고, 그 원화상데이터로부터, 최저촬상조건을 포함하는 촬상조건을 구하여, 화상데이터 베이스(2)에 공급하여 기억시킨다.
즉, 촬상조건 연산부(91)는, 등속 직선운동하는 열차에 고정된 카메라의 가 상스크린 상에서의 원화상데이터에 표시된 피사체의 이동거리를 구하고, 카메라의 시점(촬상포인트)으로부터 가상스크린까지의 거리(시점/가상스크린간 거리)와, 가상스크린 상의 피사체의 이동거리를 사용하여, 최저촬상조건을 포함하는 촬상조건을 구한다.
다음에, 도 53을 참조하여, 촬상조건 연산부(91)에 의한 촬상조건의 산출방법에 대하여 설명한다.
이때, 도 53에서, D는, 카메라가 고정된 열차의 주행궤적과, 주목하고 있는 피사체인 주목피사체와의 사이의 거리(카메라와 주목피사체와의 사이의, 카메라의 이동방향과 수직인 방향에 따른 거리) D를 나타내고, h는, 카메라와 주목피사체와의 사이의, 카메라의 이동방향을 따른 거리를 나타낸다. 또한, L은, 카메라의 시점으로부터 가상스크린까지의 거리를 나타내고, φ0은, 카메라의 광축의 편각을 나타낸다. 더구나 Δd는, 주목피사체가, 카메라에 대하여 단위시간당 이동하는 거리(카메라의 이동거리), 즉, 카메라의 이동속도를 나타내고, Δx는, 카메라의 가상스크린 상에서의 원화상데이터에 표시된 주목피사체의 단위시간당 이동거리, 즉, 주목피사체의 가상스크린 상의 이동속도를 나타낸다.
이 경우, 카메라의 시점으로부터 주목피사체의 방향의 편각 φ는, 거리 D와 h를 사용하여, 다음식으로 나타낼 수 있다.
Figure 112004004287481-pct00031
또한, 가상스크린 상에서의 주목피사체의 이동거리 Δx는, 예를 들면, 다음식으로 나타낼 수 있다.
Figure 112004004287481-pct00032
단, 식 (32)에서, φ+와 φ-는, 예를 들면, 다음식으로 주어지는 것을 취한다.
Figure 112004004287481-pct00033
식 (32)에, 식 (33)을 대입하면, 다음식을 얻을 수 있다.
Figure 112004004287481-pct00034
한편, 변수 t의 함수 f(t)를, 그 변수 t로 미분한 함수(도함수) f'(t)는, 다음식으로 표시된다.
Figure 112004004287481-pct00035
식 (35)를 변형하면, 다음식을 얻을 수 있다.
Figure 112004004287481-pct00036
그래서, 지금, 변수 h/D의 함수 f(h/D)를, 예를 들면, 다음식과 같이 정의한다.
Figure 112004004287481-pct00037
식 (37)의 함수 f(h/D)를 사용하여, 식 (34)를 나타내면, 다음식과 같이 된다.
Figure 112004004287481-pct00038
식 (38)은, 식 (36)의 관계를 사용함으로써, 식 (39)와 같이 변형할 수 있다.
Figure 112004004287481-pct00039
한편, 변수 t의 함수 g1(t)을 인수로 하는 함수 g2(g1(t))를, 변수 t로 미분하면, 다음식과 같이 된다.
Figure 112004004287481-pct00040
또한, 함수 tan(t)와, 함수 tan-1(t)의 미분은, 각각, 식 (41)과 (42)로 표 시된다.
Figure 112004004287481-pct00041
Figure 112004004287481-pct00042
식 (40) 내지 (42)로부터, 식 (37)의 함수 f(h/D)의 도함수 f'(h/D)는, 다음식으로 표시된다.
Figure 112004004287481-pct00043
식 (43)으로부터, 식 (39)은, 식 (44)로 표시된다.
Figure 112004004287481-pct00044
식 (44)에서, 미지의 변수는, Δd, D, h, φ0이다. 또한, 식 (44)에서, Δx는, 가상스크린 상에 표시된 주목피사체의 이동거리를 나타내고, 가상스크린 상의 주목피사체를 표시하고 있는 화소로부터 계산할 수 있다. 더구나, 식 (44)에서, L은, 카메라의 시점으로부터 가상스크린까지의 거리를 나타내고, 임의의 값을 설정할 수 있다.
따라서, 식 (44)에서의 4개의 미지의 변수 Δd, D, h, φ0은, 원리적으로는, 가상스크린 상의 4개의 화소에 대하여, 그 이동거리를 구하면, 그 이동거리와, 카메라의 시점으로부터 가상스크린까지의 거리 L을 사용하여, 식 (44)로부터 추정할 수 있다.
여기서, 도 53에서 설명한 방법에 의하면, 카메라와 피사체와의 사이의, 카메라의 이동방향과 수직인 방향에 따른 거리 D, 촬상포인트 Pc에서의 카메라의 광축의 편각 φ0 및 카메라의 이동속도 Δd, 즉, 최저촬상조건인 것 외, 카메라와 주목피사체와의 사이의, 카메라의 이동방향에 따른 거리 h도 포함하는 촬상조건이 구해진다.
도 52의 촬상조건 연산부(91)에서는, 전술한 바와 같이 하여, 촬상조건 Δd, D, h, φ0이 구해진다.
그래서, 도 54의 흐름도를 참조하여, 도 52의 촬상조건 연산부(91)가 행하는 처리(촬상조건을 추정하는 촬상조건 연산처리)에 대하여 설명한다.
우선 처음에, 스텝 S161에서, 촬상조건 연산부(91)는, 화상데이터 베이스(2)에 기억된 프레임 중에서, 촬상조건 연산처리의 대상으로 하는 4프레임 이상을, 처리대상 프레임으로서 선택하여, 스텝 S162로 진행한다.
스텝 S162에서는, 촬상조건 연산부(91)는, 원화상데이터를 촬상하였을 때의 촬상포인트로부터 스크린까지의 거리 L을, 소정의 값으로 설정하고, 스텝 S163으로 진행한다.
스텝 S163에서는, 촬상조건 연산부(91)는, 스텝 S161에서 처리대상프레임으 로서 선택된 4프레임 이상의 원화상데이터의 각 프레임으로부터 동일위치의 화소를, 촬상조건을 연산하는 데 사용하는 연산대상화소로서 선택한다.
여기서, 연산대상화소를, 처리대상프레임으로 된 각 프레임의 동일위치의 화소로 하는 것은, 도 53에 나타낸, 카메라와 주목 피사체와의 사이의, 카메라의 이동방향에 따른 거리 h를 일정값으로 하기 위해서이다.
그 후, 스텝 S164로 진행하고, 촬상조건 연산부(91)는, 연산대상화소 중에서, 아직 주목화소로 하고 있지 않는 것 중 하나를 주목화소로서 선택하여, 스텝 S165로 진행한다.
스텝 S165에서는, 촬상조건 연산부(91)는, 주목화소의 모션 벡터를 검출하여, 스텝 S166으로 진행한다. 스텝 S166에서는, 촬상조건 연산부(91)는, 주목화소의 모션 벡터로부터, 주목화소의 이동거리 Δx를 구하여, 스텝 S167로 진행한다.
스텝 S167에서는, 촬상조건 연산부(91)는, 모든 연산대상화소를 주목화소로서, 그 이동거리 Δx를 구했는지 어떤지를 판정하고, 아직, 주목화소로 하고 있지 않은 연산대상화소가 있다고 판정된 경우, 스텝 S164으로 되돌아가, 이하, 동일한 처리를 반복한다.
또한, 스텝 S167에서, 모든 연산대상화소를 주목화소로 하였다고 판정된 경우, 스텝 S168로, 진행하고, 촬상조건 연산부(91)는, 연산대상화소로 된 4 이상의 화소 각각에 대하여 요청된 이동거리 Δx와, 원화상 데이터를 촬상하였을 때의 촬상포인트로부터 스크린까지의 거리 L을 사용하고, 식 (44)로부터, 촬상조건 Δd, D, h, φ0을 구하여, 화상데이터 베이스(2)에 기억시켜, 처리를 종료한다.
이때, 스텝 S167에서는, 연산대상화소로 된 4 이상의 화소 각각에 대하여 구해진 이동거리 Δx와, 원화상데이터를 촬상하였을 때의 촬상포인트로부터 스크린까지의 거리 L에 대하여, 식 (44)을 만족하는 Δd, D, h, φ0이 연산되게 된다. 그 연산방법으로서는, 예를 들면, Δd, D, h, φ0 각각의 값을 순차 변경하여, 식 (44)를 만족하는지 어떤지를 검사(검산)하는 방법 등이 있다.
이상과 같이, 카메라를 이동하면서 촬상이 행해졌을 때의, 카메라의 가상스크린 상에서의 원화상데이터에 표시된 피사체의 이동거리 Δx를 구하여, 카메라에 있어서 원화상데이터가 촬상되었을 때의 시점으로부터 가상스크린까지의 거리 L과, 이동거리 Δ를 사용하여, 촬상조건 Δd, D, h, φ0을 구하도록 했으므로, 카메라를 이동하면서 촬상을 행함으로써 얻어진 원화상데이터로부터, 촬상조건을, 용이하게 구할 수 있다.
더구나, 그 촬상조건을 사용하여, 원화상데이터를, 사용자의 시점에서 본 제시용 화상데이터로 변환하는 것이 가능하게 된다.
이때, 본 실시예에서는, 컴퓨터(1)에 프로그램을 실행시킴으로써, 전술한 각종의 처리를 행하게 하도록 하였지만, 전술한 각종의 처리는, 기타, 전용의 하드웨어에 의해 행하는 것도 가능하다.
또한, 화상데이터의 취득에 대해서는, 텔리센트릭(telecentric)계 렌즈를 사용한 카메라로, 오브젝트의 전방위 화상을 촬상함으로써, 중간데이터에 해당하는 데이터를 취득할 수 있다. 이 경우, 복잡한 변환작업이 불필요하게 되기 때문에, 간단히 중간데이터를 취득할 수 있다.
이상과 같이, 본 발명에 의하면, 예를 들면, 실사의 화상이어도, 용이하게, 사용자의 시점에 따라 변화시키는 것이 가능하게 된다.

Claims (84)

  1. 제1 화상데이터를 제2 화상데이터로 변환하는 화상처리장치에 있어서,
    소정의 위치에, 사용자의 시점을 설정하는 설정수단과,
    상기 제1 화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 상기 제1 화상데이터를, 상기 사용자의 시점에서 보이는 상기 제2 화상데이터로 변환하는 변환수단을 구비한 것을 특징으로 하는 화상처리장치.
  2. 제 1 항에 있어서,
    상기 설정수단은, 사용자의 위치를 검출하고, 그 위치에, 상기 사용자의 시점을 설정한 것을 특징으로 하는 화상처리장치.
  3. 제 1 항에 있어서,
    상기 제1 화상데이터는, 소정의 피사체를, 복수의 시점에서 촬상한 화상데이터인 것을 특징으로 하는 화상처리장치.
  4. 제 1 항에 있어서,
    상기 제1 화상데이터는, 그 제1 화상데이터를 촬상하는 촬상장치를 직선적으로 이동하면서 촬상된 것인 것을 특징으로 하는 화상처리장치.
  5. 제 1 항에 있어서,
    상기 변환수단은, 상기 제1 화상데이터를 촬상하였을 때의, 소정의 곡면을 지나는 광선정보 중, 상기 사용자의 시점으로부터 상기 소정의 곡면으로 향하는 광선정보와 동일한 광선정보를 사용하여, 상기 제1 화상데이터를 상기 제2 화상데이터로 변환하는 것을 특징으로 하는 화상처리장치.
  6. 제 5 항에 있어서,
    상기 소정의 곡면은, 개곡면, 또는 소정의 피사체를 둘러싸는 폐곡면인 것을 특징으로 하는 화상처리장치.
  7. 제 1 항에 있어서,
    상기 변환수단은, 상기 제1 화상데이터를 구성하는 화소에 입사한 광선에 대응하는 화소값으로 이루어지는 소정포맷의 화상데이터인 중간데이터를, 상기 제2 화상데이터로 변환하는 중간데이터 변환수단을 가진 것을 특징으로 하는 화상처리장치.
  8. 제 7 항에 있어서,
    상기 중간데이터는, 상기 제1 화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터인 것을 특징으로 하는 화상처리장치.
  9. 제 7 항에 있어서,
    상기 중간데이터는, 상기 제1 화상데이터를 구성하는 화소에 입사한 광선의 각 방향에 대하여, 그 방향에 수직인 평면의 각 점마다, 그 점에 입사하는 상기 평면과 수직인 방향의 상기 광선에 대응하는 화소값이 나타낸 화상데이터인 것을 특징으로 하는 화상처리장치.
  10. 제 7 항에 있어서,
    상기 중간데이터는, 상기 제1 화상데이터를 구성하는 화소에 입사한 광선의 방향과 수직인 평면의 각 점에 대하여, 그 평면과 수직한 방향마다, 그 방향의 상 기 광선에 대응하는 화소값이 나타낸 화상데이터인 것을 특징으로 하는 화상처리장치.
  11. 제 7 항에 있어서,
    상기 중간데이터 변환수단은, 상기 중간데이터에서의 상기 사용자의 시점과 소정의 가상적인 스크린인 가상스크린 상의 각 화소를 연결하는 직선을 연결하는 직선과 일치하는 상기 광선에 대응하는 화소값을 상기 가상스크린 상의 화소의 화소값으로 하고, 상기 가상스크린 상의 화소값으로 이루어지는 화상데이터를 상기 제2 화상데이터로 하는 것을 특징으로 하는 화상처리장치.
  12. 제 7 항에 있어서,
    상기 변환수단은, 상기 제1 화상데이터를 상기 중간데이터로 변환하는 제1 화상데이터 변환수단을 더 가지고,
    상기 중간데이터 변환수단은, 상기 제1 화상데이터 변환수단이 출력하는 상기 중간데이터를 상기 제2 화상데이터로 변환하는 것을 특징으로 하는 화상처리장치.
  13. 제 12 항에 있어서,
    상기 제1 화상데이터 변환수단은, 상기 제1 화상데이터를 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리장치.
  14. 제 12 항에 있어서,
    상기 제1 화상데이터 변환수단은, 상기 제1 화상데이터를, 그 화소에 입사한 광선의 각 방향에 대하여, 그 방향에 수직인 평면의 각 점마다, 그 점에 입사하는 상기 평면과 수직인 방향의 광선에 대응하는 화소값이 나타낸 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리장치.
  15. 제 12 항에 있어서,
    상기 제1 화상데이터 변환수단은, 상기 제1 화상데이터를, 그 화소에 입사한 광선의 방향과 수직인 평면의 각 점에 대하여, 그 평면과 수직인 방향마다, 그 방향의 광선에 대응하는 화소값이 표시된 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리장치.
  16. 제 12 항에 있어서,
    상기 제1 화상데이터 변환수단은, 상기 제1 화상데이터를 촬상한 시점과 소정의 가상적인 스크린인 가상스크린 상의 상기 제1 화상데이터의 각 화소를 연결하는 직선과 일치하는 상기 광선에 대응하는 화소값을, 그 광선과, 그 광선에 수직인, 소정의 점을 지나는 평면과의 교점의 화소값으로 하고, 그 평면 상의 교점에서의 화소값으로 이루어지는 화상데이터를, 상기 중간데이터로 하는 것을 특징으로 하는 화상처리장치.
  17. 제 7 항에 있어서,
    상기 중간데이터는, 상기 제1 화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터이고,
    상기 소정의 점을 지나는 평면 상의, 상기 광선과의 교점 이외의 점에서의 화소값을 보간하는 보간수단을 더 구비한 것을 특징으로 하는 화상처리장치.
  18. 제 17 항에 있어서,
    상기 보간수단은, 상기 소정의 점을 지나는 다른 평면 상의, 상기 다른 평면 에 수직인 광선과의 교점에서의 화소값에 의해, 상기 소정의 점을 지나는 평면 상의, 상기 광선과의 교점 이외의 점에서의 화소값을 보간하는 것을 특징으로 하는 화상처리장치.
  19. 제 7 항에 있어서,
    상기 중간데이터는, 오브젝트로부터의 광선이 평행하게 되는 정도로 먼 위치에서 본 상기 오브젝트의 화상데이터와, 상기 광선의 방향을 갖는 것을 특징으로 하는 화상처리장치.
  20. 제 1 항에 있어서,
    상기 제2 화상데이터를 표시하는 표시수단을 더 구비한 것을 특징으로 하는 화상처리장치.
  21. 제1 화상데이터를 제2 화상데이터로 변환하는 화상처리방법에 있어서,
    소정의 위치에, 사용자의 시점을 설정하는 설정스텝과,
    상기 제1 화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 상기 제1 화상데이터를, 상기 사용자의 시점에서 보이는 상기 제2 화상데이터로 변환하는 변환스텝을 구비하는 것을 특징으로 하는 화상처리방법.
  22. 제 21 항에 있어서,
    상기 설정스텝에 있어서, 사용자의 위치를 검출하고, 그 위치에, 상기 사용자의 시점을 설정하는 것을 특징으로 하는 화상처리방법.
  23. 제 21 항에 있어서,
    상기 제1 화상데이터는, 소정의 피사체를, 복수의 시점에서 촬상한 화상데이터인 것을 특징으로 하는 화상처리방법.
  24. 제 21 항에 있어서,
    상기 제1 화상데이터는, 그 제1 화상데이터를 촬상하는 촬상장치를 직선적으로 이동하면서 촬상된 것을 특징으로 하는 화상처리방법.
  25. 제 21 항에 있어서,
    상기 변환스텝에 있어서, 상기 제1 화상데이터를 촬상하였을 때의, 소정의 곡면을 지나는 광선정보 중, 상기 사용자의 시점으로부터 상기 소정의 곡면으로 향하는 광선정보와 동일한 광선정보를 사용하여, 상기 제1 화상데이터를 상기 제2 화상데이터로 변환하는 것을 특징으로 하는 화상처리방법.
  26. 제 25 항에 있어서,
    상기 소정의 곡면은, 개곡면, 또는 소정의 피사체를 둘러싸는 폐곡면인 것을 특징으로 하는 화상처리방법.
  27. 제 21 항에 있어서,
    상기 변환스텝은, 상기 제1 화상데이터를 구성하는 화소에 입사한 광선에 대응하는 화소값으로 이루어지는 소정 포맷의 화상데이터인 중간데이터를, 상기 제2 화상데이터로 변환하는 중간데이터 변환스텝을 갖는 것을 특징으로 하는 화상처리방법.
  28. 제 27 항에 있어서,
    상기 중간데이터는, 상기 제1 화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터인 것을 특징으로 하는 화상처리방법.
  29. 제 27 항에 있어서,
    상기 중간데이터는, 상기 제1 화상데이터를 구성하는 화소에 입사한 광선의 각 방향에 대하여, 그 방향에 수직인 평면의 각 점마다, 그 점에 입사하는 상기 평면과 수직인 방향의 상기 광선에 대응하는 화소값이 표시된 화상데이터인 것을 특징으로 하는 화상처리방법.
  30. 제 27 항에 있어서,
    상기 중간데이터는, 상기 제1 화상데이터를 구성하는 화소에 입사한 광선의 방향과 수직인 평면의 각 점에 대하여, 그 평면과 수직한 방향마다, 그 방향의 상기 광선에 대응하는 화소값이 표시된 화상데이터인 것을 특징으로 하는 화상처리방법.
  31. 제 27 항에 있어서,
    상기 중간데이터 변환스텝에 있어서, 상기 중간데이터에서의 상기 사용자의 시점과 소정의 가상적인 스크린인 가상스크린 상의 각 화소를 연결하는 직선과 일치하는 상기 광선에 대응하는 화소값을 상기 가상스크린 상의 화소의 화소값으로 하고, 상기 가상스크린 상의 화소값으로 이루어지는 화상데이터를 상기 제2 화상데이터로 하는 것을 특징으로 하는 화상처리방법.
  32. 제 27 항에 있어서,
    상기 변환스텝은, 상기 제1 화상데이터를 상기 중간데이터로 변환하는 제1 화상데이터 변환스텝을 더 가지고,
    상기 중간데이터 변환스텝에 있어서, 상기 제1 화상데이터 변환스텝에서 출력되는 상기 중간데이터를 상기 제2 화상데이터로 변환하는 것을 특징으로 하는 화상처리방법.
  33. 제 32 항에 있어서,
    상기 제1 화상데이터 변환스텝에 있어서, 상기 제1 화상데이터를 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리방법.
  34. 제 32 항에 있어서,
    상기 제1 화상데이터 변환스텝에 있어서, 상기 제1 화상데이터를 그 화소에 입사한 광선의 각 방향에 대하여, 그 방향에 수직인 평면의 각 점마다, 그 점에 입사하는 상기 평면과 수직인 방향의 광선에 대응하는 화소값이 표시된 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리방법.
  35. 제 32 항에 있어서,
    상기 제1 화상데이터 변환스텝에 있어서, 상기 제1 화상데이터를 그 화소에 입사한 광선의 방향과 수직인 평면의 각 점에 대하여, 그 평면과 수직인 방향마다, 그 방향의 광선에 대응하는 화소값이 표시된 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리방법.
  36. 제 32 항에 있어서,
    상기 제1 화상데이터 변환스텝에 있어서, 상기 제1 화상데이터를 촬상한 시점과 소정의 가상적인 스크린인 가상스크린 상의 상기 제1 화상데이터의 각 화소를 연결하는 직선과 일치하는 상기 광선에 대응하는 화소값을, 그 광선과, 그 광선에 수직인 소정의 점을 지나는 평면과의 교점의 화소값으로 하고, 그 평면 상의 교점 에서의 화소값으로 이루어지는 화상데이터를 상기 중간데이터로 하는 것을 특징으로 하는 화상처리방법.
  37. 제 27 항에 있어서,
    상기 중간데이터는, 상기 제1 화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터이고,
    상기 소정의 점을 지나는 평면 상의 상기 광선과의 교점 이외의 점에서의 화소값을 보간하는 보간스텝을 더 구비하는 것을 특징으로 하는 화상처리방법.
  38. 제 37 항에 있어서,
    상기 보간스텝에 있어서, 상기 소정의 점을 지나는 다른 평면 상의 상기 다른 평면에 수직인 광선과의 교점에서의 화소값에 의해, 상기 소정의 점을 지나는 평면 상의 상기 광선과의 교점 이외의 점에서의 화소값을 보간하는 것을 특징으로 하는 화상처리방법.
  39. 제 27 항에 있어서,
    상기 중간데이터는, 오브젝트로부터의 광선이 평행하게 되는 정도로 먼 위치에서 본 상기 오브젝트의 화상데이터와, 상기 광선의 방향을 갖는 것을 특징으로 하는 화상처리방법.
  40. 제 21 항에 있어서,
    상기 제2 화상 데이터를 표시하는 표시스텝을 더 구비하는 것을 특징으로 하는 화상처리방법.
  41. 삭제
  42. 제1 화상데이터를 제2 화상데이터로 변환하는 화상처리를, 컴퓨터로 행하게 하는 프로그램이 기록되어 있는 프로그램 기록매체에 있어서,
    소정의 위치에, 사용자의 시점을 설정하는 설정스텝과,
    상기 제1 화상데이터를 촬상하였을 때의 광선의 궤적과 그 광선에 대응하는 화소값인 광선정보를 사용하여, 상기 제1 화상데이터를, 상기 사용자의 시점에서 보이는 상기 제2 화상데이터로 변환하는 변환스텝을 구비하는 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터 판독가능한 기록 매체.
  43. 화상데이터를 변환하는 화상처리장치에 있어서,
    복수의 시점에서 촬상된 상기 화상데이터를 취득하는 취득수단과,
    상기 화상데이터를, 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터인 중간데이터로 변환하는 변환수단을 구비하는 것을 특징으로 하는 화상처리장치.
  44. 제 43 항에 있어서,
    상기 변환수단은, 상기 화상데이터를 그 화소에 입사한 광선의 각 방향에 대하여, 그 방향에 수직인 평면의 각 점마다, 그 점에 입사하는 상기 평면과 수직인 방향의 광선에 대응하는 화소값이 나타낸 화상데이터인 상기 중간데이터로 변환하 는 것을 특징으로 하는 화상처리장치.
  45. 제 43 항에 있어서,
    상기 변환수단은, 상기 화상데이터를 그 화소에 입사한 광선의 방향과 수직인 평면의 각 점에 대하여, 그 평면과 수직인 방향마다, 그 방향의 광선에 대응하는 화소값이 표시된 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리장치.
  46. 제 43 항에 있어서,
    상기 변환수단은, 상기 화상데이터를 촬상한 시점과 소정의 가상적인 스크린인 가상스크린 상의 상기 화상데이터의 각 화소를 연결하는 직선을 연결하는 직선과 일치하는 상기 광선에 대응하는 화소값을, 그 광선과, 그 광선에 수직인, 소정의 점을 지나는 평면과의 교점의 화소값으로 하고, 그 평면 상의 교점에서의 화소값으로 되는 화상데이터를 상기 중간데이터로 하는 것을 특징으로 하는 화상처리장치.
  47. 제 43 항에 있어서,
    상기 중간데이터는, 상기 화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터이고,
    상기 소정의 점을 지나는 평면 상의 상기 광선과의 교점 이외의 점에서의 화소값을 보간하는 보간수단을 더 구비하는 것을 특징으로 하는 화상처리장치.
  48. 제 47 항에 있어서,
    상기 보간수단은, 상기 소정의 점을 지나는 다른 평면 상의, 상기 다른 평면에 수직인 광선과의 교점에서의 화소값에 의해, 상기 소정의 점을 지나는 평면 상의, 상기 광선과의 교점 이외의 점에서의 화소값을 보간하는 것을 특징으로 하는 화상처리장치.
  49. 제 43 항에 있어서,
    상기 중간데이터는, 오브젝트로부터의 광선이 평행하게 되는 정도로 먼 위치에서 본 상기 오브젝트의 화상데이터와, 상기 광선의 방향을 갖는 것을 특징으로 하는 화상처리장치.
  50. 화상데이터를 변환하는 화상처리방법에 있어서,
    복수의 시점에서 촬상된 상기 화상데이터를 취득하는 취득스텝과,
    상기 화상데이터를 그 소정의 화소에 입사한 광선과, 그 광선과 수직인 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터인 중간데이터로 변환하는 변환스텝을 구비하는 것을 특징으로 하는 화상처리방법.
  51. 제 50 항에 있어서,
    상기 변환스텝에 있어서, 상기 화상데이터를 그 화소에 입사한 광선의 각 방향에 대하여, 그 방향에 수직인 평면의 각 점마다, 그 점에 입사하는 상기 평면과 수직인 방향의 광선에 대응하는 화소값이 표시된 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리방법.
  52. 제 50 항에 있어서,
    상기 변환스텝에 있어서, 상기 화상데이터를 그 화소에 입사한 광선의 방향과 수직인 평면의 각 점에 대하여, 그 평면과 수직인 방향마다, 그 방향의 광선에 대응하는 화소값이 나타낸 화상데이터인 상기 중간데이터로 변환하는 것을 특징으로 하는 화상처리방법.
  53. 제 50 항에 있어서,
    상기 변환스텝에 있어서, 상기 화상데이터를 촬상한 시점과 소정의 가상적인 스크린인 가상스크린 상의 상기 화상데이터의 각 화소를 연결하는 직선과 일치하는 상기 광선에 대응하는 화소값을, 그 광선과, 그 광선에 수직인, 소정의 점을 지나는 평면과의 교점의 화소값으로 하고, 그 평면 상의 교점에서의 화소값으로 이루어지는 화상데이터를 상기 중간데이터로 하는 것을 특징으로 하는 화상처리방법.
  54. 제 50 항에 있어서,
    상기 중간데이터는, 상기 화상데이터를 구성하는 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터이고,
    상기 소정의 점을 지나는 평면 상의, 상기 광선과의 교점 이외의 점에서의 화소값을 보간하는 보간스텝을 더 구비하는 것을 특징으로 하는 화상처리방법.
  55. 제 54 항에 있어서,
    상기 보간스텝에 있어서, 상기 소정의 점을 지나는 다른 평면 상의, 상기 다 른 평면에 수직인 광선과의 교점에서의 화소값에 의해, 상기 소정의 점을 지나는 평면 상의, 상기 광선과의 교점 이외의 점에서의 화소값을 보간하는 것을 특징으로 하는 화상처리방법.
  56. 제 50 항에 있어서,
    상기 중간데이터는, 오브젝트로부터의 광선이 평행하게 되는 정도로 먼 위치에서 본 상기 오브젝트의 화상데이터와, 상기 광선의 방향을 갖는 것을 특징으로 하는 화상처리방법.
  57. 삭제
  58. 화상데이터를 변환하는 화상처리를, 컴퓨터로 행하게 하는 프로그램이 기록되어 있는 프로그램 기록매체에 있어서,
    복수의 시점에서 촬상된 상기 화상데이터를 취득하는 취득스텝과,
    상기 화상데이터를, 그 소정의 화소에 입사한 광선과, 그 광선과 수직인, 소정의 점을 지나는 평면과의 교점에서의 화소값을, 상기 소정의 화소의 화소값으로 한 화상데이터인 중간데이터로 변환하는 변환스텝을 구비하는 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터 판독가능한 기록 매체.
  59. 삭제
  60. 삭제
  61. 삭제
  62. 삭제
  63. 삭제
  64. 삭제
  65. 오브젝트로부터의 광선에 대응하는 화소값을 갖는 소정의 포맷의 중간데이터를 출력하는 중간데이터 출력수단과,
    상기 오브젝트에 대한 시점의 위치정보가 출력되는 시점출력수단과,
    상기 중간데이터를 사용하여, 상기 시점으로부터의 상기 오브젝트의 화상을 작성하는 중간데이터 변환수단을 구비한 것을 특징으로 하는 화상처리장치.
  66. 제 65 항에 있어서,
    상기 중간데이터는, 상기 오브젝트로부터의 광선에 대응하는 화소값과, 상기 광선의 방향을 대응시킨 소정 포맷의 데이터인 것을 특징으로 하는 화상처리장치.
  67. 제 65 항에 있어서,
    상기 중간데이터는, 상기 오브젝트로부터의 광선의 방향과, 상기 광선의 방 향과 수직으로, 소정의 점을 지나는 평면 상의 각 점마다의 위치와, 상기 각 점에 입사되는 상기 평면과 수직인 방향의 상기 광선에 대응하는 화소값을 대응시킨 데이터인 것을 특징으로 하는 화상처리장치.
  68. 제 67 항에 있어서,
    상기 중간데이터는, 상기 광선의 방향에 대하여, 상기 각 점의 위치마다, 상기 화소값이 표시된 화상데이터인 것을 특징으로 하는 화상처리장치.
  69. 제 67 항에 있어서,
    상기 중간데이터는, 상기 평면 상의 각 점에 대하여, 상기 광선의 방향마다, 상기 화소값이 나타낸 화상데이터인 것을 특징으로 하는 화상처리장치.
  70. 제 65 항에 있어서,
    상기 중간데이터는, 상기 오브젝트로부터의 광선이 평행하게 되는 정도로 먼 위치에서 본 상기 오브젝트의 화상데이터와, 상기 광선의 방향을 갖는 것을 특징으로 하는 화상처리장치.
  71. 제 66 항에 있어서,
    상기 중간데이터 변환수단은, 상기 중간데이터에서의, 상기 시점과 소정의 가상적인 스크린인 가상스크린 상의 각 화소를 연결하는 직선과 일치하는 상기 광선에 대응하는 화소값을 상기 가상스크린 상의 화소의 화소값으로 하고, 상기 가상스크린 상의 화소값으로 이루어지는 화상데이터를 상기 시점으로부터의 상기 오브젝트의 화상으로 하는 것을 특징으로 하는 화상처리장치.
  72. 제 67 항에 있어서,
    상기 소정의 점을 지나는 평면 상에서, 결락한 화소값을 보간하는 보간수단을 더 구비한 것을 특징으로 하는 화상처리장치.
  73. 제 65 항에 있어서,
    상기 시점으로부터의 상기 오브젝트의 화상을 표시하는 표시수단을 더 구비한 것을 특징으로 하는 화상처리장치.
  74. 오브젝트로부터의 광선에 대응하는 화소값을 갖는 소정의 포맷의 중간데이터 를 출력하는 중간데이터 출력스텝과,
    상기 오브젝트에 대한 시점의 위치정보가 출력되는 시점출력스텝과,
    상기 중간데이터를 사용하여, 상기 시점으로부터의 상기 오브젝트의 화상을 작성하는 중간데이터 변환스텝을 구비하는 것을 특징으로 하는 화상처리방법.
  75. 제 74 항에 있어서,
    상기 중간데이터는, 상기 오브젝트로부터의 광선에 대응하는 화소값과, 상기 광선의 방향을 대응시킨 소정의 포맷의 데이터인 것을 특징으로 하는 화상처리방법.
  76. 제 74 항에 있어서,
    상기 중간데이터는, 상기 오브젝트로부터의 광선의 방향과, 상기 광선의 방향과 수직으로, 소정의 점을 지나는 평면 상의 각 점마다의 위치와, 상기 각 점에 입사되는 상기 평면과 수직인 방향의 상기 광선에 대응하는 화소값을 대응시킨 데이터인 것을 특징으로 하는 화상처리방법.
  77. 제 76 항에 있어서,
    상기 중간데이터는, 상기 광선의 방향에 대하여, 상기 각 점의 위치마다, 상기 화소값이 표시된 화상데이터인 것을 특징으로 하는 화상처리방법.
  78. 제 76 항에 있어서,
    상기 중간데이터는, 상기 평면 상의 각 점에 대하여, 상기 광선의 방향마다, 상기 화소값이 표시된 화상데이터인 것을 특징으로 하는 화상처리방법.
  79. 제 74 항에 있어서,
    상기 중간데이터는, 상기 오브젝트로부터의 광선이 평행하게 되는 정도로 먼 위치에서 본 상기 오브젝트의 화상데이터와, 상기 광선의 방향을 갖는 것을 특징으로 하는 화상처리방법.
  80. 제 75 항에 있어서,
    상기 중간데이터 변환스텝에 있어서, 상기 중간데이터에서의, 상기 시점과 소정의 가상적인 스크린인 가상스크린 상의 각 화소를 연결하는 직선과 일치하는 상기 광선에 대응하는 화소값을 상기 가상스크린 상의 화소의 화소값으로 하고, 상기 가상스크린 상의 화소값으로 되는 화상데이터를 상기 시점으로부터의 상기 오브 젝트의 화상으로 하는 것을 특징으로 하는 화상처리방법.
  81. 제 76 항에 있어서,
    상기 소정의 점을 지나는 평면 상에서, 결락한 화소값을 보간하는 보간스텝을 더 구비하는 것을 특징으로 하는 화상처리방법.
  82. 제 74 항에 있어서,
    상기 시점으로부터의 상기 오브젝트의 화상을 표시하는 표시스텝을 더 구비하는 것을 특징으로 하는 화상처리방법.
  83. 삭제
  84. 컴퓨터에 실행시키는 프로그램이 기록되어 있는 프로그램 기록매체에 있어서,
    오브젝트로부터의 광선에 대응하는 화소값을 갖는 소정의 포맷의 중간데이터를 출력하는 중간데이터 출력스텝과,
    상기 오브젝트에 대한 시점의 위치정보가 출력되는 시점출력스텝과,
    상기 중간데이터를 사용하여, 상기 시점으로부터의 상기 오브젝트의 화상을 작성하는 중간데이터 변환스텝을 구비하는 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터 판독가능한 기록 매체.
KR1020047001647A 2002-06-03 2003-06-03 화상처리장치 및 방법, 프로그램 및 프로그램 기록매체,및 데이터구조 및 데이터 기록매체 KR100967826B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002161838A JP4211292B2 (ja) 2002-06-03 2002-06-03 画像処理装置および画像処理方法、プログラム並びにプログラム記録媒体
JPJP-P-2002-00161838 2002-06-03
PCT/JP2003/006982 WO2003103278A1 (ja) 2002-06-03 2003-06-03 画像処理装置および方法、プログラムおよびプログラム記録媒体、並びにデータ構造およびデータ記録媒体

Publications (2)

Publication Number Publication Date
KR20050002796A KR20050002796A (ko) 2005-01-10
KR100967826B1 true KR100967826B1 (ko) 2010-07-05

Family

ID=29706591

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047001647A KR100967826B1 (ko) 2002-06-03 2003-06-03 화상처리장치 및 방법, 프로그램 및 프로그램 기록매체,및 데이터구조 및 데이터 기록매체

Country Status (5)

Country Link
US (1) US7831086B2 (ko)
EP (1) EP1511300A4 (ko)
JP (1) JP4211292B2 (ko)
KR (1) KR100967826B1 (ko)
WO (1) WO2003103278A1 (ko)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11124207B2 (en) 2014-03-18 2021-09-21 Transportation Ip Holdings, Llc Optical route examination system and method
US9873442B2 (en) 2002-06-04 2018-01-23 General Electric Company Aerial camera system and method for identifying route-related hazards
US20150235094A1 (en) 2014-02-17 2015-08-20 General Electric Company Vehicle imaging system and method
US9875414B2 (en) 2014-04-15 2018-01-23 General Electric Company Route damage prediction system and method
US20110285842A1 (en) * 2002-06-04 2011-11-24 General Electric Company Mobile device positioning system and method
US10110795B2 (en) 2002-06-04 2018-10-23 General Electric Company Video system and method for data communication
US9919723B2 (en) 2002-06-04 2018-03-20 General Electric Company Aerial camera system and method for determining size parameters of vehicle systems
JP4517664B2 (ja) 2004-02-12 2010-08-04 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
US20060190812A1 (en) * 2005-02-22 2006-08-24 Geovector Corporation Imaging systems including hyperlink associations
EP3196806A1 (en) * 2006-05-01 2017-07-26 University Corporation for Atmospheric Research Optical device for correcting geostationary satellite imagery for earth curvature effects
JP5291619B2 (ja) * 2006-05-24 2013-09-18 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 座標系レジストレーション
US8224122B2 (en) * 2006-12-15 2012-07-17 Microsoft Corporation Dynamic viewing of wide angle images
JP4926826B2 (ja) * 2007-05-25 2012-05-09 キヤノン株式会社 情報処理方法および情報処理装置
CN101937563B (zh) * 2009-07-03 2012-05-30 深圳泰山在线科技有限公司 一种目标检测方法和设备及其使用的图像采集装置
JP5569329B2 (ja) * 2010-10-15 2014-08-13 大日本印刷株式会社 会議システム、監視システム、画像処理装置、画像処理方法及び画像処理プログラム等
JP5803184B2 (ja) * 2010-11-19 2015-11-04 株式会社リコー 画像投影装置、メモリアクセス方法
JP2012134885A (ja) * 2010-12-22 2012-07-12 Sony Corp 画像処理装置及び画像処理方法
JP5966256B2 (ja) 2011-05-23 2016-08-10 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
US9274595B2 (en) 2011-08-26 2016-03-01 Reincloud Corporation Coherent presentation of multiple reality and interaction models
JP5913934B2 (ja) * 2011-11-30 2016-05-11 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム、および画像処理装置を有する撮像装置
JP5966341B2 (ja) * 2011-12-19 2016-08-10 大日本印刷株式会社 画像処理装置、画像処理方法、画像処理装置用プログラム、画像表示装置
US9998659B2 (en) * 2012-03-01 2018-06-12 Geo Semiconductor Inc. Method and system for adaptive perspective correction of ultra wide-angle lens images
US9691241B1 (en) * 2012-03-14 2017-06-27 Google Inc. Orientation of video based on the orientation of a display
US8525088B1 (en) * 2012-03-21 2013-09-03 Rosemont Aerospace, Inc. View-point guided weapon system and target designation method
ITRM20130063U1 (it) * 2013-04-04 2014-10-05 Virtualmind Di Davide Angelelli Sonda per riprese endoscopiche e videoispezioni, denominata realworld360
KR20140147205A (ko) * 2013-06-18 2014-12-30 삼성전자주식회사 휴대 가능한 의료 진단 장치의 주행 경로 제공 방법 및 장치
US9411013B2 (en) * 2014-02-14 2016-08-09 Google, Inc. Instrument for automated testing of displays
FR3018119B1 (fr) * 2014-02-28 2017-07-07 Thales Sa Systeme de visualisation de casque comportant des moyens d'affichage et de gestion de documentation
US9414168B2 (en) * 2014-03-27 2016-08-09 Starkey Laboratories, Inc. Magnetometer in hearing aid
JP5843033B1 (ja) * 2014-05-15 2016-01-13 株式会社リコー 撮像システム、撮像装置、プログラムおよびシステム
US10296098B2 (en) * 2014-09-30 2019-05-21 Mirama Service Inc. Input/output device, input/output program, and input/output method
US20160182822A1 (en) * 2014-12-19 2016-06-23 Sony Corporation System, method, and computer program product for determiing a front facing view of and centering an omnidirectional image
CN104469167B (zh) * 2014-12-26 2017-10-13 小米科技有限责任公司 自动对焦方法及装置
KR102399686B1 (ko) * 2015-07-28 2022-05-19 삼성전자주식회사 3d 렌더링 방법 및 장치
US10275928B2 (en) * 2016-04-05 2019-04-30 Qualcomm Incorporated Dual fisheye image stitching for spherical image content
US10102610B2 (en) 2016-04-05 2018-10-16 Qualcomm Incorporated Dual fisheye images stitching for spherical video
CN106023692A (zh) * 2016-05-13 2016-10-12 广东博士早教科技有限公司 一种基于娱乐交互的ar趣味学习系统及方法
DE102016210312A1 (de) * 2016-06-10 2017-12-14 Siemens Healthcare Gmbh Steuerobjekt zur Steuerung eines Transfers von Dual-Energy-CT-Bilddaten an ein Clientgerät
JP7071054B2 (ja) * 2017-01-20 2022-05-18 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
TWI606421B (zh) * 2017-03-13 2017-11-21 國立交通大學 魚眼相機全自動校正方法及其裝置
KR102491939B1 (ko) 2018-08-24 2023-01-26 삼성전자주식회사 전방향 이미지를 프로세싱하기 위한 방법 및 장치
JP7392341B2 (ja) 2019-09-17 2023-12-06 富士フイルムビジネスイノベーション株式会社 情報処理装置、及び情報処理プログラム
USD959477S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface
USD959447S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface
USD959476S1 (en) 2019-12-20 2022-08-02 Sap Se Display system or portion thereof with a virtual three-dimensional animated graphical user interface
US11205296B2 (en) * 2019-12-20 2021-12-21 Sap Se 3D data exploration using interactive cuboids

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000339497A (ja) 1999-05-25 2000-12-08 Sony Computer Entertainment Inc 画像生成装置、画像生成方法、エンタテインメント・システム及び記録媒体
JP2001008232A (ja) 1999-06-25 2001-01-12 Matsushita Electric Ind Co Ltd 全方位映像出力方法と装置

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69032737T2 (de) * 1989-07-13 1999-04-29 Canon Kk Kodierung- und Dekodierungsvorrichtung geeignet für das Kopieren von Daten
US5185667A (en) * 1991-05-13 1993-02-09 Telerobotics International, Inc. Omniview motionless camera orientation system
CA2128704C (en) * 1992-11-24 2004-06-22 Theo Jogchum Poelstra A method and device for producing panoramic images, and a method and device for consulting panoramic images
JP3032414B2 (ja) 1993-10-29 2000-04-17 キヤノン株式会社 画像処理方法および画像処理装置
JPH07200876A (ja) * 1993-12-28 1995-08-04 Matsushita Electric Ind Co Ltd 三次元画像生成方法
JP3026716B2 (ja) * 1994-03-16 2000-03-27 株式会社日立製作所 立体型表示装置
EP0684585B1 (en) * 1994-04-22 2003-02-05 Canon Kabushiki Kaisha Image forming method and apparatus
JPH0877356A (ja) * 1994-09-09 1996-03-22 Fujitsu Ltd 三次元多眼画像の処理方法及び処理装置
JPH0896165A (ja) 1994-09-29 1996-04-12 Fujitsu Ltd 画像生成方法及び画像生成装置
JP3164481B2 (ja) * 1994-12-20 2001-05-08 シャープ株式会社 撮像装置
US5703961A (en) * 1994-12-29 1997-12-30 Worldscape L.L.C. Image transformation and synthesis methods
US5793379A (en) * 1995-04-03 1998-08-11 Nvidia Corporation Method and apparatus for scaling images having a plurality of scan lines of pixel data
US5963664A (en) * 1995-06-22 1999-10-05 Sarnoff Corporation Method and system for image combination using a parallax-based technique
JPH0949714A (ja) 1995-08-04 1997-02-18 Canon Inc 3次元形状抽出装置
JP3457104B2 (ja) * 1995-09-14 2003-10-14 三菱電機株式会社 画像合成装置
US6111702A (en) * 1995-11-30 2000-08-29 Lucent Technologies Inc. Panoramic viewing system with offset virtual optical centers
JPH09187038A (ja) 1995-12-27 1997-07-15 Canon Inc 3次元形状抽出装置
US6009188A (en) * 1996-02-16 1999-12-28 Microsoft Corporation Method and system for digital plenoptic imaging
US6445807B1 (en) * 1996-03-22 2002-09-03 Canon Kabushiki Kaisha Image processing method and apparatus
JPH09288735A (ja) * 1996-04-23 1997-11-04 Canon Inc 画像処理装置
AU718453B2 (en) * 1996-07-17 2000-04-13 Sony Corporation Image coding and decoding using mapping coefficients corresponding to class information of pixel blocks
US6532036B1 (en) * 1997-01-30 2003-03-11 Yissum Research Development Company Of The Hebrew University Of Jerusalem Generalized panoramic mosaic
US6009190A (en) * 1997-08-01 1999-12-28 Microsoft Corporation Texture map construction method and apparatus for displaying panoramic image mosaics
US5991464A (en) * 1998-04-03 1999-11-23 Odyssey Technologies Method and system for adaptive video image resolution enhancement
US20010015751A1 (en) * 1998-06-16 2001-08-23 Genex Technologies, Inc. Method and apparatus for omnidirectional imaging
JP2000113209A (ja) * 1998-10-01 2000-04-21 Dainippon Screen Mfg Co Ltd 多視点画像生成表示方法、多視点画像生成表示装置、および多視点画像生成表示プログラムを記録した記録媒体
US6750860B1 (en) * 1998-12-28 2004-06-15 Microsoft Corporation Rendering with concentric mosaics
JP3054146B1 (ja) 1999-01-06 2000-06-19 宜昇科技股▲分▼有限公司 パノラマ像装置
JP3420734B2 (ja) 1999-03-12 2003-06-30 東京都下水道サービス株式会社 管渠内面画像の処理方法
JP2000276613A (ja) * 1999-03-29 2000-10-06 Sony Corp 情報処理装置および情報処理方法
JP2000285259A (ja) 1999-03-31 2000-10-13 Toshiba Corp 多視点画像からの任意視点画像再生方法
DE19953063A1 (de) * 1999-11-03 2001-06-07 Univ Magdeburg Tech Verfahren zur dreidimensionalen optischen Vermessung von Objektoberflächen
GB2358980B (en) * 2000-02-07 2004-09-01 British Broadcasting Corp Processing of images for 3D display
US6327325B1 (en) * 2000-02-16 2001-12-04 Ge Medical Systems Global Technology Company, Llc Methods and apparatus for adaptive interpolation reduced view CT scan
JP2002064812A (ja) 2000-08-17 2002-02-28 Sharp Corp 移動物体追尾装置
US6959120B1 (en) * 2000-10-27 2005-10-25 Microsoft Corporation Rebinning methods and arrangements for use in compressing image-based rendering (IBR) data
US7940299B2 (en) * 2001-08-09 2011-05-10 Technest Holdings, Inc. Method and apparatus for an omni-directional video surveillance system
JP2003141562A (ja) * 2001-10-29 2003-05-16 Sony Corp 非平面画像の画像処理装置及び画像処理方法、記憶媒体、並びにコンピュータ・プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000339497A (ja) 1999-05-25 2000-12-08 Sony Computer Entertainment Inc 画像生成装置、画像生成方法、エンタテインメント・システム及び記録媒体
JP2001008232A (ja) 1999-06-25 2001-01-12 Matsushita Electric Ind Co Ltd 全方位映像出力方法と装置

Also Published As

Publication number Publication date
EP1511300A4 (en) 2006-01-04
US7831086B2 (en) 2010-11-09
JP4211292B2 (ja) 2009-01-21
WO2003103278A1 (ja) 2003-12-11
JP2004015106A (ja) 2004-01-15
EP1511300A1 (en) 2005-03-02
US20050012745A1 (en) 2005-01-20
KR20050002796A (ko) 2005-01-10

Similar Documents

Publication Publication Date Title
KR100967826B1 (ko) 화상처리장치 및 방법, 프로그램 및 프로그램 기록매체,및 데이터구조 및 데이터 기록매체
US11989822B2 (en) Damage detection from multi-view visual data
CN112771539B (zh) 采用使用神经网络从二维图像预测的三维数据以用于3d建模应用
US5508734A (en) Method and apparatus for hemispheric imaging which emphasizes peripheral content
CN111292364B (zh) 一种三维模型构建过程中图像快速匹配的方法
JP3922543B2 (ja) 撮像装置、および画像表示装置
CN112053446A (zh) 一种基于三维gis的实时监控视频与三维场景融合方法
CN111442721B (zh) 一种基于多激光测距和测角的标定设备及方法
CN102714696A (zh) 图像处理装置、图像处理方法、程序及摄影装置
CN107727076A (zh) 测量系统
CN111429523B (zh) 一种在3d建模中远距离标定方法
WO2009093136A2 (en) Image capture and motion picture generation
Byrne et al. Maximizing feature detection in aerial unmanned aerial vehicle datasets
Fan et al. Wide-angle image rectification: A survey
CN113780205A (zh) 一种跨视角信息融合人体姿态估计与空间定位方法
US11562474B2 (en) Mobile multi-camera multi-view capture
CN101686407A (zh) 一种采样点信息的获取方法和装置
Yu et al. Human pose estimation in monocular omnidirectional top-view images
CN114187344A (zh) 一种地图构建方法、装置及设备
JP4243931B2 (ja) 画像処理装置および画像処理方法、並びにプログラムおよび記録媒体
Chatzifoti On the popularization of digital close-range photogrammetry: a handbook for new users.
CN116643648B (zh) 一种三维场景匹配交互方法、装置、设备及存储介质
Vanijja et al. Omni-directional stereoscopic images from one omni-directional camera
Davis et al. RSTA on the move: detection and tracking of moving objects from an autonomous mobile platform
Wang et al. 360x180 stereoscopic panoramas from static light field capturing

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
LAPS Lapse due to unpaid annual fee