KR910008461B1 - 고속 화상 발생을 위한 원근도법 및 프로세서 - Google Patents
고속 화상 발생을 위한 원근도법 및 프로세서 Download PDFInfo
- Publication number
- KR910008461B1 KR910008461B1 KR1019880700524A KR880700524A KR910008461B1 KR 910008461 B1 KR910008461 B1 KR 910008461B1 KR 1019880700524 A KR1019880700524 A KR 1019880700524A KR 880700524 A KR880700524 A KR 880700524A KR 910008461 B1 KR910008461 B1 KR 910008461B1
- Authority
- KR
- South Korea
- Prior art keywords
- pixel
- database
- voxel
- data
- display screen
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B9/00—Simulators for teaching or training purposes
- G09B9/02—Simulators for teaching or training purposes for teaching control of vehicles or other craft
- G09B9/08—Simulators for teaching or training purposes for teaching control of vehicles or other craft for teaching control of aircraft, e.g. Link trainer
- G09B9/30—Simulation of view from aircraft
- G09B9/301—Simulation of view from aircraft by computer-processed or -generated image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Business, Economics & Management (AREA)
- Aviation & Aerospace Engineering (AREA)
- Educational Technology (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
내용 없음.
Description
[발명의 명칭]
고속 화상 발생을 위한 원근도법 및 프로세서
[도면의 간단한 설명]
제1도는 본 발명에 따라 프로세서를 결합한 시스템의 블럭 다이어그램.
제2a도 및 제2b도는 디스플레이 픽셀이 다수의 지상 데이터 베이스 복셀에 대해 좁은 피치각(shallow pitch angle)으로 접지레벨에 투사되는 상태를 도시한 도면.
제3a도 및 제3b도는 본 발명을 실행하기 위한 "파이프"구조(컴퓨터 아키텍쳐)를 기능적인 모듈 형태로 도시한 화면.
제4도는 세계(world) 및 스크린 좌표 시스템, 및 (눈)가시위치를 도시한 도면.
제5도는 복셀 데이터 베이스의 수평 보간(inter-polation)을 설명하기에 유용한 다이어그램.
제6도는 컬럼 파라메터 발생의 기하학적 형태를 도시한 도면.
제7도는 로울각에 의한 선-회전(pre-rotated) 영상 프레임을 도시한 도면.
제8도는 컬럼 개시 및 종료 픽셀을 도시한 도면.
제9도는 픽셀 종료 테스트 및 픽셀 가시성 테스트 상황을 도시한 도면.
제10도는 방사상 색상(radial color) 집약(integration) 상태를 도시한 도면.
제11도는 수직 투시 보정을 설명하기에 유용한 도면.
제12도는 회전 반-아리아싱(anti-aliasing)을 도시한 도면이다.
[발명의 상세한 설명]
[발명의 배경]
본 발명은 일반적으로 영상 발생에 관한 것으로서, 특히 저장된 영상 데이터의 컴퓨터 처리를 구현하는 영상 발생 시스템에 관한 것이다.
영상 시뮬레이터, 비행 시뮬레이터 및 트레이너(trainer)와 같은 여러가지 응용시에는, 연속으로 움직이는 외관(appearance)을 발생시키기에 충분한 프레임비로 실감있는(사진 특성에 가까운)영상, 또는 장면(scene)을 발생시키는 것이 필요하다.
영상 발생 시스템의 한 형태는 단색(monocolor), 고른 명암(smooth shaded) 및 일정한 구조의 다각형(textured polygon)의 배경(scenery)을 포함하는 물체의 상호 접속(interconnected) 평면 다각형 작도(description)의 데이터 베이스를 기초로 한다. 주로 손으로 구도된 만화와 같은 영상 및 데이터 베이스를 발생시키는 이 시스템을 제작하는데 경비가 많이 들고 실제(real) 자연의 실제 복잡성을 재생하고자 하는 경우에 과대하게 크게 된다.
그러나 다른 영상 발생 방법은 초당 수 백만개의 복셀(voxel)이 처리되어야 하는 소정의 응용 분야에 바람직한 영상 특성 및 프레임 비를 위한 복셀[데이타 베이스 디스크립터 요소(descriptor element)] 또는 그리드(gridded) 데이터 베이스를 포함한다.
본 발명의 주 목적은 연속적으로 움직이는 외관을 발생시키기에 충분한 프레임 비로 실감있는 영상 또는 장면을 발생시키기 위한 방법 및 장치를 제공하는 것이다.
본 발명의 다른 목적은 연속으로 움직이는 외관을 발생시키기에 충분한 프레임 비로 실감 있는 영상 또는 장면을 발생시키기 위하여 복셀 또는 그리드 데이터 베이스를 효율적으로 처리하기 위한 방법 및 장치를 제공하는 것이다.
본 발명의 또 다른 목적은 병렬 데이타 처리방법이 효율적으로 사용되는 실감 있는 영상 또는 장면을 발생시키기 위한 방법 및 장치를 제공하는 것이다.
[발명의 요약]
한 실시예에 따르면, 본 발명은 복셀 데이터 베이스를 사용함으로써 디스플레이 스크린의 픽셀(pixel)에 데이터 형태로 장면의 영상 테이타를 제공한다. 호스트 시뮬레이션(host simulation)시스템은 시뮬레이트된 시야(field of view, FOV)를 결정하는 디스플레이 스크린에 관련된 관찰자(viewer)의 눈위치에 대한 정보를 제공하고, 복셀 데이터 베이스는 지상(ground) 좌표 위치를 나타내는 다수의 해상도(resolution) 레벨 각각에 대한 2차원 그리드로 구성된다. 디스플레이 스크린은 로우(row) 및 컬럼(column) 픽셀과 시점(eyepoint)을 통해 투사된 평면으로 구성되고, 소정의 픽셀 컬럼은 소정의 선형 스캐닝(scanning) 경로를 정하는 라인내의 데이터 베이스 그리드를 교차한다. 본 발명에 따르면, 복셀 데이터 베이스는 데이터 베이스상의 투사된 픽셀 크기에 비례하는 데이터 베이스 해상도로 선형 경로를 따라 효율적으로 스캔되고, 스캔된 복셀 데이터는 연속 픽셀을 위한 데이터 내로 처리되며, 이 픽셀들의 각각의 경계는 데이터 베이스의 선형 스캔시에 마주친 데이터 베이스 표면상으로 투사된다. 상승(수직) 투시 및 로울(roll)과 같은 효과를 위한 보상은 픽셀 데이터의 계산 다음에 수행된다.
본 발명의 한가지 장점은 수평 및 수직 투시 계산을 분리시킴으로써 데이터 베이스 내용, 특히 데이터 베이스 상승값(Z)에 독립적인 선형 방식으로 데이터 베이스를 스캐닝할 수 있게 하므로, 고도의 "파이프 라인" 컴퓨터 아키텍쳐(architecture)가 가능하다는 것이다. 이 "파이프"는 각각의 클럭(clock) 사이클에서, 거의 모든 국면의 처리 알고리즘이 연속 데이터 요소를 위해 병렬로 처리되도록 다수의 연속 처리 단계로 처리를 완전히 나타낸다.
처리시의 후속 병렬 처리는 적당한 순서로 선형 데이터 베이스 스캔을 처리함으로써 연속 스캔들 사이의 유도된 픽셀 데이터내에 간단한 선행 관계를 발생시키는 단-방향 상호 의존성만이 있게 되는 특징에 의해 달성된다. 이것은 다수의 스캔을 병렬로 처리하게 하여, 수행될 제2차원의 병렬 처리를 제공한다. 그러므로, 이 특징들을 결합하면, 사진과 같은 장면을 발생시키기에 충분한 묘사 능력으로 데이터 베이스로 수행되는 "실시간"장면 발생기의 실제적 구현이 가능하다.
[도면의 간단한 설명]
본 발명의 특징으로 고려되는 새로운 형태는 특히, 첨부한 특허청구 범위에 설명되어 있다. 구성 및 동작방법 뿐만 아니라 부수적인 목적 및 장점 모두에 대한 본 발명 자체는 동일한 참조 번호가 동일한 부품에 붙어 있는 첨부 도면을 관련하여 다음 명세서를 읽음으로써 가장 잘 이해할 수 있다.
[양호한 실시예의 설명]
[서론]
일례에 따라, 우선 제1도 및 제2도를 주로 참조하면, 본 발명은, 지상 좌표 위치를 도시한 2-차원 그리드(24)로 구성된 복셀 데이터 베이스를 사용함으로써 디스플레이 스크린(22)의 픽셀(20)에 데이터 형태로 장면의 영상 데이터를 제공한다. 제1도에는 도면을 간단히 하기 위해 픽셀(20)이 6개의 로우(row) 및 컬럼(column)으로만 구성된 것으로 도시되어 있으나, 대부분의 응용시에는 480×480과 같은 상당히 많은 수가 더욱 전형적이라는 것을 알아야 한다. 픽셀은 선정된 위치를 갖고 있는 디스플레이 스크린의 작은 영역이다. 복셀은 데이터 베이스 그리드 내의 복셀 베이스 위치에 의해 배치되고, 픽셀 데이터를 형성하도록 처리하기 위한 정보를 포함한다. 예를 들어, 색상 및 또는 휘도 및 위치의 상승(Z)는 각각의 복셀과 관련되어 있다. 데이터 베이스 그리드의 x, y 평면내의 복셀 영역[제2b도의 (24)참조]이 각각의 그리드 영역과 관련된 Z값(높이)으로 고려될 때, "체적 요소(volume element)", 즉 복셀이 인지된다. 또한 제 2b도에는 2-차원 그리드의 매우 작은 부분만이 도시되어 있다는 것을 알 수 있다.
호스트 시뮬레이션 시스템(26)은, 본 발명에 따라서 디스플레이 스크린(22)상에 고질(high quality) 영상을 디스플레이 하기 위해 적절한 포맷(format)으로 픽셀 데이터를 제공하도록 복셀 데이터 베이스를 처리하는 프로세서(장면 발생기, 40)에, 디스플레이 스크린(22)에 관련된 관찰자의 시점(28)에 대한 데이터를 제공한다. 호스트 시뮬레이션 시스템(26)은 예를 들어 트레이너 시뮬레이션 응용시에 호스트 컴퓨터(도시하지 않음) 및 조이스틱(joystick) 구동 제로 모델(도시하지 않음)을 포함할 수 있다. 시점 및 소정의 픽셀 컬럼을 통해 투사된 평면은 선형 스캐닝 경로를 정하는 라인내의 데이터 베이스 그리드에 교차한다.(제6도 참조). 후술하는 바와 같이, 복셀 데이터 베이스는 데이터 베이스 그리드상의 투사된 픽셀 크기에 비례하는 데이터 베이스 해상도로 선형 경로를 따라 효율적으로 스캔되고, 스캔된 복셀 데이터는 연속 복셀용 데이터로 처리된다. 제10도에 도시한 바와 같이, 각각의 픽셀 하부 및 상부 경계(boundary)는 각각의 픽셀과 관련된 복셀을 정하기 위해 데이터 베이스의 선형 스캔시에 마주친 데이터 베이스 표면상에 투사된다.
[아키텍쳐와 알고리즘의 상호 작용]
프로세서(40)의 길이가 긴 처리 파이프 라인(pipe line)을 인터럽트하는 자주 일어나는 상호 의존성(interdependence)이 없이 디스플레이 픽셀을 향하여 데이터 베이스 요소를 연속 처리할 수 있게 하기 위해 복셀 데이터 베이스를 스크린 좌표로 투시 변화시키기 위한 알고리즘이 고안되었다. 이때 대량 임무(task)가 발생되어, 전체적으로 순차적인 서브프로세스(subprocess)로 이루어진다.
파이프 라인 프로세서에서의 각각의 서브프로세스는 파이프 라인 서브프로세스로 더 세분된다.
그러므로, 하드웨어 실현시에, 파이프 라인내의 어떠한 프로세싱 요소도 그 기능을 완수하기 위하여 1클럭 사이클(clock cycle)이상을 필요로 하지 않으므로, 각각의 사이클마다 처리된 데이터 요소를 따라 통과시킬 수 있다. 실질적으로 모든 프로세싱 요소는 처리될 데이터의 흐름(flow)이 대부분 인터럽트되지 않기 때문에 각각의 사이클마다 유효 데이터로 충만 상태로 되어, 하드웨어를 매우 고효율로 사용할 수 있게 한다.
용량이 큰 동적 데이터 베이스 메모리(70, 제3a도)는 원하는 프로세싱 클럭 시간보다 큰 사이클 시간을 갖고 있는 동적 MOS메모리에 의하여 구성된다. 그러나, 알고리즘 x, y 좌표로 데이터 베이스를 교차하여 스캔하는 규칙적인 방식은 고효율 삽입(interleaving)메모리 설계 구조를 형성한다. 그러므로, 지상 좌표 위치를 나타내는 2차원 그리드로 구성된 복셀 데이터 베이스를 선택하면 이 삽입 능력은 최적화된다.
[하드웨어 아키텍쳐에서의 크기 고찰]
제2a도 및 제2b도는 디스플레이 픽셀이 지상 데이터 베이스 복셀에 어떻게 투사되는지를 도시한 것이다. 제2b도의 예에서, 픽셀 색상은 3개의 전체 복셀과 제1복셀의 큰 부분, 및 지상 데이터 베이스의 표면상의 픽셀 풋프린트(footprint, 29)를 구성하는 최종(제5) 복셀의 작은 부분으로 집약된다.
기술한 시스템 내의 주요한 크기 파라메터는 피치 각 값인데, 더욱 얕은 각(수평에 가까운)에서 부하 관리(load monagement)기술이 사용되어, 발생된 장면 특성을 다소 저하시킨다. (가장 효과적인 부하 관리 방법은 더욱 조악한(coarse) 복셀을 사용하여, 픽셀 당 복셀 계수를 감소시키는 것이다. 이것은 보통 2개 또는 심지어 4개까지의 인자(factor)에서는 현저하지가 않다. 또 다른 선택은 1/60초의 증가로 장면 발생율을 저하시키는 것인데, 이것 역시 바로 앞의 낮은 경사각에서는 매우 현저하지가 않다.) 예를 들어, 부하 관리가 필요하게 되기 전에 수평 아래의 11°의 피치각으로 증가시키는 것이 바람직한 경우에는, 복셀이 평균 픽셀 폭의 1.5배가 되기 때문에(x1 및 x2사이로 유지됨, 즉 복셀 크기/해상도는 1개의 픽셀 폭 이상 및 2개의 픽셀 폭 이하로 선택됨), 투사된 픽셀은 길이가 평균 4개의 복셀 길이로 된다. 또한, 예를 들어, 480×480픽셀 디스플레이 및 33ms갱신비 화상시에는, 초당 평균 약 8백만개의 픽셀이 처리된다. 그러므로, 필요한 픽셀을 발생시키기 위해 초당 8백만 개의 복셀의 유효 평균비로 각각 실행하는 4개의 병렬 복셀 파이프가 필요하게 된다.
[개략적인 설명]
복셀 데이터 베이스로부터 실시간 장면을 발생시키는 방법은 시야(view)내의 모든 데이터 베이스 디스크립터 요소(복셀)를 억세스(access)하는 단계와 적당한 스크린 픽셀내로 그 픽셀의 기여도에 비례하여 각각의 가시 복셀 휘도값을 집약시키는 단계를 포함한다. 이것은 시야 및 장면 내용의 경사각에 따라, 디스플레이를 발생시키기 위하여 초당 수 천만 개의 복셀을 억세스하여 처리한다는 것을 의미한다. 픽셀 풋프린트폭은 처리할 복셀 데이터의 적절한 계층 레벨을 결정하는 데 사용되므로, 처리될 복셀의 수는 경사 범위와 무관하게 유지된다.
영상 발생 알고리즘은 장면 발생처리를 병렬의 동일한 프로세서를 실행하게 하는 다수의 동일한 임무로 나눈다. 알고리즘은 또한 각각의 임무에서의 모든 단계들이 길이가 긴 파이프 라인 구조내의 연속 데이터 요소상에서 동시에 계산될 수 있게 한다. 그러므로, 시스템 아키텍쳐는 복셀에 기초한 장면의 발생에 필요한 고속 계산을 실행하게 하는 2차원 병렬 처리를 사용한다.
제3a도 및 제3b도는 후반처리를 위하여 단일 파이프로 들어가는 다중 파이프 형태와 같은 파이프 구조의 전방부를 도시한 것이다. 특히, 제3a도 및 제3b도에는 기능 모듈러 요소(50 내지 57)이 4개의 파이프(병렬처리 채널)을 나타내는 것으로 도시되어 있다. 예들 들어, 좌표 어드레스(address)발생기(50)은 각각의 프로세서 파이프내에서 각각 동작하는 4개의 모듈러 요소(50a, 50b, 50c 및 50d)로 구성된 것으로 도시되어 있다. 동적 데이터 베이스 메모리(70)은 다수의 서브모듈(submodule)을 포함하는 것으로 도시되어 있고, 버퍼(67 및 68)은 (단일 파이프 형태로 되어 있으나)각각 2개의 서브모듈을 포함하는 것으로 도시되어 있다. 다중 영역에서, 데이터 베이스 요소(복셀)은 디스플레이 픽셀을 발생시키도록 처리된다. 그후 데이터 트래픽(traffic)은 픽셀이 발생되고 단일 파이프 구조가 나머지 처리 요구에 부합하기에 충분하게 되는 시점에서 더 작고 예측 가능한 수로 감소된다.
파이프 길이는 물리적 요소들 사이의 데이터 경로를 위한 공통 인터페이스 프로토콜(interface protocol) 및 공통 제어 시스템과 더불어 기능적 모듈러 방식으로 구축된다. 이것은 기능적인 부가 및 변경의 범위에 대한 1개의 아키텍쳐를 제공한다. 이 모듈성(modularity)은 또한, 기능이 신속 고장 검출/고장 분리(fault detection/ fault isolation)을 허용하는 모듈로 중앙 억세스 가능 검사 입력 및 출력으로서 서로 실제로 분리되기 때문에, 고장 진단 및 보수 과정에 큰 도움을 준다.
병렬 파이프 구조는 또한 하드웨어 요구에 모듈성을 제공하여, 공통 아키텍쳐가 소정의 응용 분야에 경제적으로 적합하게 되게 한다. 병렬의 동일한 파이프는 또한 기능 저하 동작을 제공하는 고장 소프트(failsoft) 고장 허용 능력(fault tolerant capability)을 제공하므로, 시스템 유용성을 높아지게 한다.
프로세서 실행은 전체적으로 프레임 및 컬럼 파라메터 발생기(44)와 함께 파이프 매니저[pipe manager(42)]의 제어하에 행해진다. 파이프 매니저는 임무 리스트(스캔 칼럼) 및 자원(resource) 집합체(파이프 프로세서)를 갖고 있다. 매니저의 작업은 디스플레이 정보의 프레임을 완성하기 위하여 자원이(기간이 변화되는) 임무를 계속 충만 상태로 유지하게 하는 것이다.
활성 데이타 베이스 메모리(70) 전후의 상호접속(스위치)회로망(72,74)는 모든 파이프가 공통 데이타 베이스 메모리를 분할 억세스할 수 있게 한다. 메모리는 필요한 메모리 억세스 대역폭을 얻기 위하여 다수의 삽입된 서브모듈로 구성된다.
즉시(immediate) 시야 영역, 즉 즉시 처리하기 위한 영역을 정하는 데이터는 해당 게이밍(gaming)영역 (즉, 영상/장면 발생이 필요한 영역)을 정하는 데이타를 보유하는 데이타 베이스 메모리[82, 라이브러리(library)]로부터의 고속 데이터 전송에 의해 활성 데이터 베이스 랜덤 억세서 메모리(70)내의 데이터로까지 계속 유지된다. 메모리(82)는 예를 들어 다수의 자기 디스크 메모리 유니트로 구성될 수 있다. 이 전송은 데이터 베이스 억세스 제어를 위하여 현재의 또는 외삽된(extrapolated) 시점 계산을 사용하는 데이터 베이스 매니저(42)의 제어하에 수행된다.
어드레스 발생기(50)은 지상 좌표 스트림(stream)을 방출하기 위해, 활성 데이터 베이스상에 투사된 픽셀 컬럼 경로를 위한 초기 상태의 컬럼 파라메터 발생기(44)의 출력을 이용한다. 이것들은 적당한 계층 레벨에서 복셀 데이터를 얻기 위해 실제 메모리 페이지 및 서브-페이지 어드레스로 변환된다. 저장된 계층 레벨이 가시도 프로세서(56)에 의해 요구되는 것보다 낮은 해상도로 있는 경우에, [경사 범위로부터 계산된 픽셀 풋프린터(29)에 의해 정해진 바와 같이] 세기 및/또는 색상 보간기(interpolator, 54) 및 Z보간기(55)는, 저해상도 복셀 코너의 거리를 사용하고 새로운 중간세기(및/또는 색상) 및 복셀 스트림내에 삽입되는 Z값을 계산함으로써 적당한 복셀을 발생시킨다. 복셀이 물체 참고로 표시되는 경우에, 패턴 프로세서(53)은 기준 수직 패턴을 억세스하고 스트림내에 이 복셀들을 삽입한다. 최종 결과는 디스플레이 영상 컬럼을 위한 적정한 크기의 복셀 스트림이다. 가시도 프로세서(56)은 복셀 가시도를 결정하고 픽셀 풋프린트내의 다중 복셀의 수직 세기 평균화를 수행하기 위하여 이 스트림을 처리한다. 수평 평균화는 각각의 계층이 다음의 고해상도 계층 복셀 세기를 평균함으로써 발생되었기 때문에, 적당한 계층을 사용하는 효과를 제공한다. 각각의 픽셀 정보는 수직 투시 오프셋 교정이 올바른 전체 투시를 위하여 (60)에서 가해지고 헤이즈(haze)가 (61)에서 삽입되며 (62)에서 영상이 시점 로울 각을 고려하도록 회전되는 단일 파이프라인 내로 들어가게 된다. 수직 투시 변위 및 회전 계산은 확장된 정밀도로 수행되고 "핑퐁(ping-pong)"버퍼(67)내에 서브픽셀 오프셋 값으로 저장된다. 픽셀이 스캔될 때, 한개의 반-아리아싱에 대한 4개의 픽셀은 임 계산한 오프셋에 비례하여 (68)에서 수행된다. 이때 영상은 (64)에서 기호학/그래픽스(graphics)의 [크라우드(cloud)와 같은]소정의 오버레이(overlay) 특수 효과와 혼합되고, 디스플레이 (28, 제1도)에 인가하기 위하여 디지털-아날로그 변환기(DAC, 65)에서 아날로그 형태로 변환된다.
시스템은 파이프라인 프로세스의 초기부에서 적당한 수평 투시를 유지한다. 데이터 베이스를 통해 후속되는 경로를 결정할 때, 평면은 시점 및 픽셀컬럼(제6도 참조)를 통해 투사된다. 경로는 이 평면이 베이스 평면[데이타 베이스 그리드(24)]를 교차하는 라인이다. 모든 컬럼을 투사한 경로는 데이터 베이스를 통해 확장될 때 갈라진다. 그러므로, 시점으로부터 멀리 떨어진 복셀들은 스크린 상에 투사될 때 더 작고 함께 더 근접하게 나타난다. 이것은 실제 수평 투시를 유지하는 실제 기하학적 투사이다. 이 프로세스는 또한 시야 스크린의 피치각이 제로인 경우에 정확한 수직 투시를 발생시킨다. 다른 피치각의 경우에는 포스트(post)변위 정정에 의해 스크린 픽셀상에 복셀을 맵(map) 하는 알고리즘의 특성에 의해 적당한 수직 투시가 유지된다. 데이터 베이스에서, 모든 복셀(Z데이타 값)은 기준 평면에 관련하여 수직으로 배향된다. 수직 투시없이, 빌딩 및 굴뚝과 같은 높은 물체의 연부(edge)를 구성하는 복셀은 스크린 상의 단일 픽셀 컬럼상에 투사된다. 그러므로, 시야가 2개의 빌딩 사이의 거의 바로 아래에 있는 경우에, 빌딩들은 스크린상의 상부 및 하부에서 동일한 거리로 떨어져 나타난다. 디스플레이된 영상에서의 적당한 수직 투시에 의하여, 빌딩의 상부는 하부 보다 더 떨어지게 된다. 이 효과를 달성하기 위하여, 빌딩의 영상을 구성하는 픽셀들은 실제로 스크린 상에 떨어져 이동한다[기능 모듈(60)]. 이것들의 이동은 피치각, 픽셀에 기여하는 베이스 평면 위의 복셀의 높이, 및 스크린 중심으로부터의 픽셀 컬럼 거리의 함수이다.
특정한 픽셀이 스크린 상에 얼마나 멀리 편향되는지를 계산하기 위해 다수의 프로세스가 사용된다. 높은 복셀(큰 Z값)이 다수의 픽셀 상에 투사하기 때문에, 각각의 픽셀에 기여하는 복셀 부분의 높이가 계산되어야 한다. 다음에 세계 거리에서의 편향은 이 높이, 피치, 및 스크린의 중심으로부터의 거리에 기초해서 계산된다. 스크린의 중심의 좌측의 픽셀은 좌측으로 편향되는 반면 우측의 픽셀은 우측으로 편향된다. 결국, 세계 좌표에서의 편향은 스크린 좌표에서의 편향에 맵되고 픽셀은 새로운 컬럼에 할당된다. 컬럼은 피치각이 영상의 적당한 엄폐를 확실히 하기 위해 하향될 때 스크린의 중심으로부터 외향으로 계산되고 상향 피치를 위해 반전된다.
알고리즘이 높은 복셀을 처리할 때(Z차원), 적당한 컬럼 내로 각각의 픽셀을 편향시킨다. 알고리즘의 가까운데서 먼 곳으로의 스캔은 편향된 근접 물체에 의하여 노출된 먼 장면이 노출된 영역내에 채워지게 한다. 근접 물체가 컬럼 내로 편향된 경우에, 이것은 멀리 있는 복셀보다 우선 취해져서 이 복셀들을 흡수한다. 픽셀이 편향될 때 근접 물체가 원거리 물체를 흡수하게 하기 위해서, 컬럼은(하향 피치 내의) 중심으로부터 측면으로 계산된다. 각각의 픽셀이 계산될 때, 편향이 있거나 있지 않을 수 있다. 픽셀이 종착(destination)컬럼 내로 들어가려고 할 때, 알고리즘은 픽셀이 이미 채워졌는지의 여부를 결정하기 위하여 저장된 충진값을 검사한다. 알고리즘이 중심으로부터 수행되기 때문에 이미 채워진 소정의 픽셀은 내부 컬럼으로부터 편향된 픽셀에 의하여 채워져야 한다. 이 내부 픽셀은 현재 픽셀보다 더 멀리 편향되었기 때문에 근접 복셀로부터 와야 된다. 그러므로, 은폐되고 단순히 무시된 것으로 간주되는 현재의 복셀로부터 계산된 픽셀을 흡수한다.
충진값은 또한 윤곽의 반-아리아스 연부에 사용된다. 픽셀이 연부에 의해 부분적으로 채워진 것으로 검출될 때 이것은 이 부분적 충진값으로 함께 프레임 버퍼(67)내에 저장된다. 스캔 후에, 배경 복셀은 이 위치의 픽셀 후보를 발생시키는데, 이것은 충진 값의 균형을 채우고 따라서 세기를 조정한다.
[상세한 설명]
본 발명의 시스템은 필요한 "사진" 장면 상세도를 한 번에 도시하고 장면 발생 프로세스에 도움이 되는 데이터 베이스 표시를 사용한다. 이것은 기본적으로 상승 및 색상 및/또는 세기[단색(monochrome) 시스템의 경우에는 단지 휘도 값] 및 고도 정보의 표시를 각각 갖고 있는 요소의 그리드이다. 데이터 베이스 발생 프로세스에서, 4개의 인접 요소(2x 및 2y)의 색상 및/또는 세기의 값이 집약되고 이것들의 최대 상승값은 데이터 베이스의 고레벨(더욱 조악한) 계층을 발생시키도록 할당된다. 이 집약은 데이터 베이스 계층 내에 다수의 레벨을 발생시키기 위해 반복적으로 수행된다. 단지 단편적으로 데이타 베이스를 확장시키는 이 오프 라인(off line) 프로세스는 픽셀에 대응하는 영역내의 전체 지상 집약을 향한 제1스텝이다. 소정의 시점으로부터 해당 지상지점에 투사된 디스플레이 픽셀의 폭과 거의 동일한 복셀을 포함하는 데이터 베이스내의 계층을 선택함으로써, 수평 집약이 달성된다. 알고리즘은 다음에 데이터 베이스 내의 해당 영역의 정돈된 스캔을 제공한다. 연속 데이터 베이스 요소들의 직선 스캔은 고삽입 메모리의 효율을 최적하게 하도록 작용한다. 스캔은 데이터 레벨에 투사된 디스플레이 스크린 픽셀의 컬럼의 폭과 동일한 간격을 두고 배치된 반경을 따라 시점으로부터 먼 방향으로 수행된다(제6도 참조). 스캔은 픽셀보다 약간 큰 복셀을 제공하는 데이터 베이스 계층 레벨로 수행되므로, 모든 그리드가 관찰될 수 있다. 스캔이 방사상 외향으로 진행할 때, 픽셀에 대응하는 연속 복셀은 총 그리드 집약을 완수하게 하기 위해 집약되고 정규화 된다.
가시 복셀은 방사상 외향으로 진행할 때 수직각 시점 내에서 증가한다. 그러므로, 고정된(디스플레이 포맷마다) 피치각 경계에서, 복셀 조명은 연속 픽셀 로우에 기여한다.
여러 응용 분야에서; 특히 좁은 시야(FOV)의 응용 분야에서의 실제 투시에 대한 합당한 접근법은 디스플레이 내의 픽셀의 단일 컬럼 내로 하강하도록 베이스 그리드 평면내에 스캔된 복셀의 모든 직선을 제한시키는 것이다. 후자의 부분은 넓은 시야내의 투시를 정정하기 위해 수직 투시 정정을 다룬다.
상기의 프로세스는 수평 레벨을 가정하여 수행된다. 이때, 최종 장면은 소정의 로울 각을 고려하기 위해 조준(boresite)주위에서 회전된다. 후속되는 반-아리아싱 단위가 주위의 오프셋 기여기로부터 새로운 픽셀 값을 계산할 수 있도록 정해지는 픽셀 경계보다 고도의 정밀도로 회전이 계산된다.
부수적인 장면 처리는 프로세스 내의 다른 지점에서 발생한다. 프로세싱에 앞서서 데이터 베이스 메모리로부터 복셀을 검색(retrieve)한 후에, (임의로)복셀은, 표시된 복셀이 복셀 스트림내에 삽입하도록 선택된 수직 패턴을 요구할 수 있는 패턴 삽입단(52)를 통과한다. 이것들은 투과 구간을 포함한 수직 차원으로 다중 색상 값으로, 나무, 건물 및 차량 등과 같은 고정된 지상 물체를 나타낼 수 있다. 물체를 이동시키기 위한 선택적인 기타 능력은 윈도우(window) 영역의 분류된 리스트의 헤드에 현재 발생된 위치를 정합시키기 위해 좌표 위치 스캔 발생기 내의 소정 수단에 의해 제공된다. 각각의 윈도우 영역은 이동 가능 물체의 풋프린트를 나타낸다(즉, 윈도우 좌표가 이동될 수 있다). 정합이 발생할 때, 병렬 프로세스는 고정 패턴 삽입단과 동일한 메카니즘을 통해 적당한 패턴을 억세스하도록 표시된 베이스 요소로 식별 물체의 실제 회전베이스를 얻는다. 그러므로, 공통 물체 베이스 묘사가 소정 배향으로 데이터 베이스내의 여러 위치에서 사용될 수 있다. 또한, 이것은 이동하거나 고정된 모든 다른 물체와 패턴을 공유한다.
픽셀 형성 후에, (61)에서는 헤이즈가 거리 및 수직 시각의 함수로서 발생된다. 크라우드는 공통 데이터 베이스 메모리(70)내의 다른 데이터 베이스상에 동일한 메카니즘으로 스캐닝함으로써 (68)에서 삽입된다. 이 다른 데이터 베이스는 지상이 묘사되는 것과 같이 3차원으로 크라우드 패턴을 묘사한다. 크라우드 패턴은 반투명 연부로 퍼지(fuzzy) 크라우드를 발생시키기 위해 매우 조악하게 되어 있다. 크라우드 선형 해상도가 지상 장면 해상도의 1/8이기 때문에, 이 조악한 데이터는 매우 작은 데이터 베이스 메모리를 점유하고 지상 장면 버퍼의 1/64만 큰 크라우드 시야를 어셈블링하기 위해 작은 프레임 버퍼를 필요로 한다. 크라우드 프레임 버퍼 다음의 보간기(66)은 조악한 픽셀들 사이의 크라우드 장면을 평활화하고 크라우드 데이터가 누락되어 있는 지상 픽셀로(64)에서 머지(merge)한다. 픽셀 범위 비교는 가시적인 것을 결정하기 위해 사용된다.
[좌표 시스템]
장면 발생 알고리즘을 상세하게 설명하기 전에, 좌표 시스템을 소개하겠다. 세계 좌표 및 스크린 좌표가 있다. 영상이 수평(로울각=0)이라고 가정함으로써 단순화된다. 이것은 통상적이고, 번거로운 3-D변환을 수행하기 위한 필요성을 없애준다. 이것이 대해서는 후술하는 부분에서 상세히 설명하겠다. X, Y 및 Z로 표시한 세계 좌표 시스템은 복셀 데이터 베이스를 정한다. (X,Y)는 데이터 위치를 맵하고 것이고 Z는 상승이다. j 및 i로 표시한 스크린 좌표는 최종 영상이 디스플레이되는 2-D 좌표이다. 변수 j는 스크린의 컬럼수를 나타내고 i는 픽셀 수를 나타낸다. 영상마다 2N개의 컬럼이 있고 컬럼마다 2N개의 픽셀이 있다. j 및 i는 모두 -N에서 N-1까지 변한다. 제4도는 2개의 좌표 시스템 및 시점(視點)(눈 위치)(XE, YE, ZE)을 도시한 것이다.
[데이타 베이스]
복셀형(그리드) 데이터 베이스는 자연적 지형 및 인공 구조물을 묘사하는데 사용되고, 매우 조밀한 그리드내로 대기의 사진을 디지털화함으로써 발생된다. 이것은 대응하는 디지털 지형 상승 데이터상에 놓여진다. 복셀형 데이터 베이스를 사용하기 위한 2가지 이유가 있다. 즉, (1) 하드웨어 효율은 스캐닝 프로세스가 최소의 경합으로 메모리를 억세스할 수 있도록 메모리가 구성될(높게 삽입될) 수 있는 경우에 개량되고, (2) 자연 지형 구조는 데이터가 공중 사진에서 유래되는 경우에, 즉 지형 구조의 세부(細部)가 짜여지는 경우에 개선된다. 각각의 위치(X,Y)에서, 복셀 데이타 베이스는 색상 및/또는 휘도 정보와 그 위치의 상승 값을 포함한다. 픽셀의 색상이 픽셀과 대응하는 복셀의 영역 집약이라는 것을 언급하였다. 복셀 집약의 일부는 데이터 베이스에 다수의 복셀 계층을 추가함으로써, 데이터 베이스 준비 시간에(즉, 오프-라인 프로세스로서) 수행될 수 있다. 초기의 디지털화 데이터로 시작하여, 복셀의 고-레벨 계층이 4개의 인접(X 및 Y에서 2개) 복셀의 색상을 평균함으로써 발생된다. 이 프로세스는 2진 계층으로 다수의 레벨을 발생시키기 위해 반복된다. 초기에, 복셀 프로세싱 중에, 복셀 크기가 투사된 픽셀 크기에 비교될 수 있는 계층 레벨을 선택한다. 이것은 수평 교차 시야 방향으로 집약을 달성한다. 스캔이 진행함에 따라, 복셀 경사 범위가 배가할 때, 투사된 픽셀 폭도 또한 배가된다. 이때, 데이터 베이스 내의 다음 고레벨(조악한 해상도 복셀)로 스위치하고 스캐닝 프로세스를 계속한다. 계층 레벨에서의 이 스위치는 범위가 다시 배가될 때마다 발생한다. 이 동작은 교차 범위와 방사 방향에서의 집약을 제공하고, 동시에 범위에 독립인 처리부하(load)를 유지시킨다. 부하는 피치각에만 의존하는 것으로, 각이 얕을수록 증가된다.
데이터 베이스는 모든 장소에서 모든 필요한 해상도 레벨로 마련될 필요가 없다. 많은 영역에서, 고해상 세부도를 제공할 필요가 없으며 또는 사진 제한이나 메모리 제한으로 인하여 유용하지 않게 될 수 있다. 스캔시의 프로세서는 각각의 복셀 억세스에서, 경사 범위 및 투사된 픽셀 크기에 적합한 해상도의 계층을 선택한다. 이것이 유용하지 않으면, 유용한 다음의 최고 계층이 선택된다. 낮은 해상도 계층은 선택되지 않기 때문에 항상 전체 수평 세기 집약이 달성된다. 복셀은 스캔 컬럼들 사이로 정해지지 않고 누락되지 않는다.
이상적인 복셀보다 크게 하고 타일링(tiling)효과를 방지하기 위하여, 수평 보간 프로세스는 복셀내의 스캔 위치에 따라 복셀의 4개의 코어 세기 값들 사이를 선형적으로 보간시킴으로써 수행된다(제5도). 또한 매끄러운 지형도를 얻기 위하여, 복셀이 4개의 코너의 Z상승값에 대해 이와 동일한 기능이 수행된다. 실행시 다중 데이터 베이스 억세스를 방지하기 위하여, 이 4개의 세기 및 Z값은 각각의 복셀로 저장된다. 불연속 위치를 제외하고는, 이 코너 값들은 간단히 인접 복셀값이 카피(copy)로 되므로 중복된다. 데이터는 이 중복이 없이 압축된 포맷으로 메모리(82, 제3a도)내에 저장된다. 데이터가 RAM 데이터 메모리(70)내로 전달될 때 이것은 "온 더 플라이(on the fly)"확장된다.
상공의 공중 사진으로부터 발생된 데이터 베이스는 빌딩, 다리, 절벽 등과 같은 상승 높이의 불연속성으로 생기는 수직 연부 상의 색상 정보를 공급하지 못한다. 이 수직 연부는 동일한 지형 위치에서의 다중 색상 상승값에 대응한다. 그러나, 대응하는 복셀은 단 1개의 상승값과 단 1개의 색상값을 포함할 수 있다. 그러므로, 데이터 베이스내에 수직 연부가 있을 때마다, 별도의 데이터 베이스 또는 패턴은 이것을 수용하기 위하여 공급되어야 한다. 이 데이터는 또한 디지털화된 사진으로부터 발생되거나 합성적으로 구성될 수 있다. 실감을 상당히 손실시키지 않고, 동일한 패턴 데이타, 즉 빌딩의 창문이 달린 벽은 1개 이상의 수직 연부에 사용될 수 있다. 지상 데이타 베이스에서, 패턴화된 물체가 필요하다면, 그때 물체의 풋프린트에서의 복셀은 패턴 메모리 내의 수직 패턴으로의 포인터(pointer)로 각각 대체된다.
[영상 프로세서에 의해 수행된 계산]
[프레임 파라메터]
실시간 영상 발생시에, 모든 영상(즉, 프레임)은 독특하게 눈위치 : XE, YE, ZE, 자세 : R(로울), P(피치), Y[좌우 요동, (yaw)], 및 FOV(시야)로 특징지워진다. 정상적으로, FOV는 일련의 영상을 위해 고정된다. XE, YE, ZE, R, P, Y만이 프레임들 사이에서 변화한다. 외부 소오스, 즉 호스트 시뮬레이션 시스템(26, 제1도)의 일부인 조이스틱 구동 에어로(aero)모델(도시하지 않음)로부터 1/30초마다 6개의 파라메터가 수신된다.
[컬럼 파라메터]
영상 파라메터를 수신한후, 알고리즘은 프로세싱 파이프들이 각각의 컬럼을 완수함에 따라 컬럼 프로세싱 파이프로 진행되는 각각의 컬럼용의 스캔 파라메터를 계산한다. 제6도는 파라메터가 어떻게 정해지는 지를 도시한 것이다. 스크린으로부터 지상 평면(Z = 0)까지 스크린에서 서로 평행한 모든 컬럼을 투사한 경우에, 투사는 피치각이 90°일 때를 제외하고는 더 이상 평행하게 되지 않는다. 이 투사들은 무한으로 방사상 외향으로 확장되고, 최저점(XE,YE,O)을 통해 통과하는 라인을 따라 교차하도록 내향으로 확장되며 수평 라인에 평행하게 된다. 교차점(각각의 투사에 대해 1점)들은 지상 스캔에 대한 개시점들이다. 제6도는 컬럼 j에 대한 개시점(Xstj)를 도시한 것이다. 피치각이 0으로 되어, 모든 스캔이 최저점(XE, YE, O)에서 개시될 때 특수한 경우가 존재한다.
컬럼 스캔에 대한 개시점이 계산되기 전에, 정해져야 되고 계산되어야 하는 소정의 다른 파라메터가 있다. 처음에 발생되는 영상은 0로울각에 대한 것이다. 실제 최종 영상을 발생시키기 위한 회전은 이 초기 영상이 수집된 후에 수행된다. 이것은 선회전된 영상이 발생되어야 한다는 것을 의미한다. 즉, 선회전된 영상에서, 그리드 라인은 출력 영상을 최종 회전이 영상의 연부에 평행한 그리드를 갖고 있는 장방형 포맷으로 하도록 영상의 연부에 관련하여 회전된다. 제7도에서, 경사진 정방형 ABCD는 발생될 실제 영상이지만, 발생된 컬럼은 연부 A'D' 및 B'C'에 평행하게 된다. 컬럼의 수 및 프레임 ABCD내의 컬럼의 길이는 로울각(R)에 따라 변한다는 것을 알 수 있다. 최종 영상 해상도가 512×512인 경우에, 컬럼 내의 최대 픽셀 수는 R이 45°일 때 724로 되고, 최소 수는 결국 1로 된다. R = 0일 때, 모든 컬럼은 512개의 픽셀을 갖게 된다.
출력 영상이 소정의 FOV각을 갖는 경우에는, 제7도로부터, 프레임 A'B'C'D'의 FOV'가 FOV이상이라는 것을 알수 있다. 이것을 겉보기 FOV라고 하겠다.
픽셀 컬럼 j경우에는, 중앙 로우 시야 방향 EG 및 프레임 EO사이의 각으로서 정해진 대응각 Vj가 있다. (제7도 참조).
FOV' 및 Vj가 계산되면, 개시점(Xstj, Ystj)가 계산될 수 있다(제6도 참조). 이것이 행해질 때, X-방향의 증분, Xj; Y-방향의 증분, Yj; 및 범위의 증분, Rj가 계산된다. 복셀이 누락되는 것을 방지하기 위해, 스캐닝은 각각의 스텝에서 1개의 최소축 그리드 라인을(적당한 그리드 해상도로) 교차시킨다. 즉, 스캐닝 라인의 주축이 X인 경우에(스캐닝 라인과 X-축 사이의 각이 45°미만인 경우에), Xj는 1로 설정된다. 그렇지 않은 경우에는 Yj가 1로 설정된다. 스캐닝 라인의 배향을 찾기 위하여, 프레임 시야 방향에 수직한 방향을 따라 지상에 투사된 각 Vj(제8도 참조)인 다른 각 αj가 계산되어야 한다. 이때 부축 증분은 지상 평면상의 이 스캐닝 라인과 주축 사이의 각의 탄젠트와 동일하게 된다. Xj 및 Yj는 모두 나중에 적당한 계층 레벨로 좌표 스캔 발생기에 의해 스케일(scale)된다.
컬럼 스캐닝시에는, 픽셀에 대한 복셀의 모든 색상(또는 휘도) 값을 픽셀 내로 집약하는 것이 바람직하다. 그러므로, 픽셀은 컬럼내에 수직으로 경계를 이루고, 집약을 위한 개시점 및 정지점이 정해지도록 계산된다. 픽셀(j, i)의 경계는 θj, i 및 θj, i+1이다. θj, i는 픽셀(j,i)의 시야 방향과 눈의 위치를 통한 수평 평면 사이의 각이다.(제8도 참조).
컬럼 스캐닝의 종료는 계산된 βj, i에서 계수된 증분의 수가 Lj + Mj를 초과할 때 결정된다. 여기에서, Lj는 중앙 로우 이상의 픽셀의 수이고 Mj는 이하의 수이다.
[컬럼 프로세싱 파이프]
[복셀 어드레스 발생(50)]
알고리즘의 이 부분의 기본 함수는 스캔 라인을 따라 복셀 어드레스를 발생시키기 위해 Xstj, Ystj 및 Xj, Yj를 사용하는 것이다. 발생된 어드레스는 복셀의 적당한 계층 레벨의 해상도로 있다는 것을 알아야 한다. 실제 메모리(제3a도의 82)에서, 복셀은 128×128복셀(16K워드)의 "페이지(page)"내에 저장된다. 각각의 페이지는 이 페이지내의 복셀의 해상도 계층에 비례하는 크기의 세계 좌표 공간의 영역을 나타낸다. 1푸트(foot)의 해상도에서의 복셀의 페이지는 실제 세계 공간의 128×128피트(feet)를 나타내게 된다. 이 페이지들은 이것들의 계층수 및 베이스 좌표 위치로 메모리 매니지먼트 유니트(80)에 의해 참조되고, 시야 영역의 풋프린트가 지상을 교차 이동할 때 데이터 베이스 RAM(70, 제3a도)내에 동적으로 부하된다. 컬럼 스캐닝 유니트에 의해 실제 세계 좌표가 발생한 다음에, 변환 유니트(51)은 실제 메모리(82)가 원하는 계층 및 좌표 위치를 포함하는지를 알기 위하여 한 셋트의 유효 페이지 테이블을 검사한다. 그렇지 않으면, 다음의 최상 유효 페이지를 찾는다. 실제 페이지의 실제 베이스 어드레스가 얻어지고 내부 페이지의 각각의 복셀 어드레스로 보충된다. 이 최종적인 어드레스는 멀티플렉싱/디멀티플렉싱 스위치(72)를 통해 다중 공통 데이터 베이스 메모리 모듈(70)으로 송출된다. 메모리 모듈은 어드레스된 복셀을 억세스하고, 프로세싱을 하기 위해 이 복셀을 스위치(74)를 통해 해상도 요구 파이프로 보낸다.
[패턴 메모리 및 프로세싱]
각각의 복셀용의 데이터는 패턴 플랙(flag) 비트를 포함한다. 이 플랙이 송출되지 않는 경우에, 복셀은 페이지 관련 베이스 Z에 관련된 4개의 코너의 Z값 및 복셀의 4개의 코너의 색상을 포함하는 통상적인 지상 복셀로 된다. 불연속성을 제외하고 이 Z 및 색상은 인접 코너들의 정확한 카피로 된다. 패턴 플랙이 셋트된 경우에, 이 복셀은 다수의 Z값 및 색상을 갖게 된다. 즉 수직 패턴이 요구된다. 이때 복셀 데이터는 억세스할 적당한 패턴을 지시하는 인덱스(index)를 포함하게 된다. 이 패턴들은 공유된 패턴 메모리(53)으로부터 검색되고, 동일한 X, Y위치에서 차례로 높이가 변하는 연속 복셀로서 복셀 스트림 내에 삽입된다.
기능 모듈(54)는 데이터 베이스 메모리를 바이패스하는 어드레스 발생기로부터 경로(75)내에 제공된(복셀 내로의) X, Y오프셋 값의 확장된 해상도 쌍을 사용하여 복셀의 4개의 코너들 사이의 세기 및/또는 색상 및 Z값을 보간한다.
[복셀 프로세싱]
다음 유니트, 즉 파이프 라인 모듈(56)에서는, 2가지의 즉시 테스트가 행해진다. 즉 색상 집약 결정을 돕기 위해, (1) 픽셀 종료 테스트, 및 (2) 픽셀 가시성 테스트가 행해진다. 픽셀 종료 테스트는 복셀이 현재의 픽셀 경계의 외부에 있는지의 여부를 결정하는 것이다. 제9도는 이 2가지 상황의 예시도이다. 이 유니트는 데이터 베이스 및 각각의 스텝 크기(해상도 크기)에서 취해진 스텝의 수에 의해 계산되는 지상 거리 Rg, 및 복셀 표면각 θy를 계산하기 위한 복셀 Z값을 사용한다. 픽셀 테스트시에, θy는 고정되어 있지만 조준 피치와 관련된 픽셀 경계각 θji와 비교된다. 가시성 테스트는 이전에 결정된 가시적인 복셀각에 대해 현재의 θy를 비교한다.
이 2가지 테스트 후에, 복셀이 픽셀 경계 내에 있고 가시적이면, 복셀의 색상이 필셀내로 집약될 수 있다.
방사상 색상 집약 상태는 제10도에 도시되어 있다. 어두운 복셀의 색상은 모두 픽셀 i내로 집약되어야 한다. 정방향 수행은 어두운 복셀의 모든 색상을 간단히 합하는 것으로, 이렇게 하면 정규화된다. 이것은 일반적인 장면이 일정한 구조의 지형일 때 적당하나, 장면이, 밝은 배경에 대해 어두운 빌딩인 경우에, 빌딩의 연부는 찌그러져 보이게 되고, 만화 그림과 같이 될 것이다. 이것을 바로잡기 위해, 복셀에 대한 픽셀의 각이 진 부분이 계산되고, 그 다음 색상이 이 비율로 가중(weight)된다. 역으로, 픽셀 경계를 중첩하는 복셀들은 은폐된 각각의 픽셀의 양에 비례하여 이 픽셀들에 배분된다.
[수직투시]
픽셀이 형성된 후, 넓은 FOV 및 평면 스크린 투사의 선택으로서 수직 투시 정정단(60)이 제공된다. 이 수직 투시 정정은 다른 컬럼에 대한 영상 스크린 상의 변위에 대응하는 p와 p'사이의 변위 d(제11도)이다. 이 변위는 피치각, 0기준 상의 복셀 높이, 및 스크린 중심으로부터의 거리의 함수이다. 제11도로부터,
가 계산될 수 있다. 여기에서, Zp는 기준상의 복셀 높이이다.
P는 정상 스크린의 피치각이고 Vj는 중심 컬럼으로부터의 컬럼 요각(yaw angle)이다. 피치각이 커질수록, 복셀은 더 높아지거나 중심 컬럼으로부터 더 멀어지고, 변위가 더 커지게 된다. 영상의 중심 칼럼에서나 0피치각 시야에서는 편향이 없어야 한다. 식(1)은 세계 공간 단위에서의 변위를 계산한다. 스크린단위에서의 대응하는 편향을 구하기 위해서 변위 d는 스크린 상에서 방지된다. 다음 식은 편향 후의 컬럼수를 제공한다.
여기에서, Rs는 시야 위치로부터 변위될 복셀 상의 지점까지의 경사 범위이고, jnew, jold및 jmiddle은 각각 신, 구 및 중간 컬럼수이다.
또한 Zp(높은 복셀 상의 중간 픽셀지점)들은 직접 사용되지 않기 때문에, Zp = ZE- Rs sinθ이다.
이 식들을 결합하면, jmiddle= 0일 때,
로 된다.
여기에서, Ze = 시점의 높이
Zp = 해당 지점의 높이
Rs = 해당 지점의 경사 범위
θ = 해당 지점의 피치각
이 형식은 제1항이 전체 컬럼에 대한 상수이고 컬럼 파라메터 발생기(44,제3a도)에 의해 공급될 수 있고, Rs가 다른 목적을 위해 각각의 점에 대해 유도되며, θ가 테이블로부터의 수직 픽셀각이며 ZE가 전체 프레임에 대한 프레임 파라메터 상수이기 때문에 변위된 컬럼 값을 유도하는데 사용된다.
[헤이즈 삽입(61)]
헤이즈 효과는 픽셀 내용의 경사 범위 및 수평에 관련된 픽셀의 피치각에 따라 변한다. 이것은 회전이 수행되는 동일한 파이프 라인 단에서 계산된다. 헤이즈 함수는 다음과 같이 기술된다.
Iout = Iorig·(1-H)+IH(H) = 출력 세기(색상)
H = f(Rs, Visθ) = 헤이즈 불투명이고 0과 1사이에 제한됨.
IH= 헤이즈의 세기(색상)
Vis = 세기가 원래의 절반이고 헤이즈의 절반인 범위
Rs = 픽셀 내용의 경사 범위
θ = 픽셀의 피치각
[회전(62)]
회전 계산은 간단한 계산에 의해 수행된다.
Xo = X1cosR + T1sinR
Yo = Y1cosR - Y1sinR
여기에서, R = 로울 각
X1, Y1= 초기 좌표
X0, Y0= 최종 출력 좌표
[회전, 반-아리아싱 및 비디오 출력]
영상 선회전으로 인하여, 계산된 그리드 픽셀은 출력 영상에 대한 픽셀과 동일하지 않게 된다. 계산된 픽셀은 선회전된 그리드를 정정한다. 소정의 임의의 양만큼 회전한 후, 이 픽셀은 최종 디스플레이 포맷으로 스캔된 그리드 상에 규칙적으로 하강하지 않고, 이 픽셀들 사이의 위치에 하강된다. 스캔 그리드 구조물내로 임의로 역이동한 경우에는, 강한 아리아싱 효과가 나타나게 된다.
회전하는 동안, 새로운 픽셀 위치가 2개의 여분 비트로, 예를 들어 X와 Y에서 정확히 계산된다. 픽셀 제위치로부터의 오프셋을 나타내는 이 비트들은 핑퐁 2중 출력 버퍼(69)내에 픽셀 색상 및/또는 세기값으로 저장된다. 프레임이 이 버퍼들 중 1개의 버퍼 내에 구축된 후, 이것은 출력 영상을 스캔하는데 사용되고 다른 버퍼는 다음 프레임을 구성하는데 사용된다. 버퍼가 출력 비디오를 발생시키도록 스캔되는 동안, 2개의 인접 로우는 반-아리아싱 알고리즘을 달성하는데 필요한 정보를 얻기위해 실질적으로 동시에 스캔된다.
제12도는 반아리아싱 회전이 수행되는 회전 영상내의 그리드지점 A, 및 디스플레이 좌표 x, y내로 R만큼 회전된 원래의 영상내의 4개의 픽셀인 C1, C2, C3및 C4를 도시한 것이다. 이 4개의 픽셀들의 색상 값은 A로부터의 오프셋에 의해 역으로 가중된 거리 d1, d2, d3및 d4에 따라 A에서 다음 픽셀내로 집약된다(1개의 단일 출력 그리드에 대한 기여수는 항상 4가 아니라는 것에 주의). 이것은 회전각에 따라 변한다. 최대 기여수는 5이지만 2정도로 작게 될 수도 있다.
지금까지 고속 화상 발생을 위한 새롭고 개량된 원근도법 및 프로세서에 대해 기술하였다. 명세서에서는 주로 특정 실시예에 대해 기술하였으나, 본 발명은 이에 제한되지 않는다는 것을 알아야 된다. 따라서, 본 분야에 숙련된 기술자들은 첨부된 특허 청구 범위에서 정해진 본 발명의 범위 내에서 본 발명을 여러가지로 수정 및 변경할 수 있다.
Claims (10)
- 지상 좌표 위치를 나타내는 2-차원 그리드로 구성된 복셀 데이터 베이스를 사용함으로써, 디스플레이 스크린의 픽셀에 대해 데이터 형태로 장면의 영상 데이터를 컴퓨터에 의해 발생시키기 위한 방법에 있어서, 데이터 베이스상에 투사된 픽셀 크기에 비례하는 데이터 베이스 해상도로 선형 경로를 따라 복셀 데이터 베이스를 효율적으로 스캐닝하는 단계, 소정의 픽셀과 관련된 복셀 데이터의 각각의 경계들이 복셀 데이터 베이스 가시 표면 상에 픽셀을 투사함으로써 결정되는 연속 픽셀의 데이터로 스캔된 복셀 데이터를 처리하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제1항에 있어서, 장면의 수직 투시의 함수로서 디스플레이 스크린 상에 픽셀 데이터를 디스플레이하기 위해 관련 위치를 변환시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제1항에 있어서, 디스플레이 스크린이 시점으로부터 본 픽셀 로우 및 컬럼과 시점을 통해 투사된 평면을 포함하고, 픽셀 컬럼이 라인내의 데이터 베이스 그리드를 교차하며, 복셀 데이터 베이스의 상기 효율적인 스캐닝이 다수의 픽셀 컬럼을 통해 평면의 이러한 라인을 따라 이루어지는 것을 특징으로 하는 방법.
- 제1항에 있어서, 상기 선형 경로가 연속 스캔들 사이에 유도된 픽셀 데이터에서 단-방향 상호의존성 만을 제공하도록 선정된 순서로 스캔되는 것을 특징으로 하는 방법.
- 제1항에 있어서, 디스플레이 스크린의 로울 배향의 함수로서 디스플레이 스크린 상에 상기 픽셀 데이터를 디스플레이하기 위해 관련 위치를 회전시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제3항에 있어서, 다수의 각각의 병렬 프로세싱 채널에 대해 스캔된 복셀 데이터를 동시에 처리하는 단계, 및 디스플레이 스크린을 위한 선정된 포맷상에 다수의 채널로부터의 픽셀 데이터를 결합하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제6항에 있어서, 선정된 포맷상에 픽셀 데이터를 결합하는 단계가, 장면의 수직 투시의 함수로서 디스플레이 스크린상에 상기 픽셀 데이터를 디스플레이하기 위해 관련 위치를 변환시키는 단계를 포함하는 것을 특징으로 하는 방법.
- 제6항에 있어서, 선정된 포맷내로 픽셀 데이터를 결합하는 단계가 디스플레이 스크린의 로울 배향의 함수로서 디스플레이 스크린상에 상기 픽셀데이터를 디스플레이하기 위해 관련 위치를 회전시키는 단계를 포함하는 것을 특징으로 하는 방법.
- 지상 좌표 위치를 나타내는 2-차원 그리드로 구성된 복셀 데이터 베이스를 사용함으로써, 시점으로부터 본 디스플레이 스크린의 데이터의 픽셀 로우 및 컬럼의 형태로 장면의 영상 데이터를 컴퓨터에 의해 발생시키기 위한 방법에 있어서, 시점 및 각각의 픽셀 컬럼을 통해 평면을 각각의 선형 스캔 경로를 정하는 복셀 데이터 베이스 그리드에 교차시킴으로써, 데이터 베이스상의 투사된 픽셀 크기에 비례하는 데이터 베이스 해상도로 선형 경로를 따라 복셀 데이터 베이스를 효율적으로 스캐닝하는 단계, 및 소정의 픽셀에 관련된 복셀 데이터의 각각의 경계들이 데이터 베이스의 선형 스캔시에 마주친 데이터 베이스 표면 위치상에 픽셀을 투사함으로써 결정되는 연속 픽셀을 위한 데이터 내로 스캔된 복셀 데이터를 처리하는 단계를 포함하고, 상기 처리 단계가 다수의 각각의 병렬 프로세싱 채널내의 다수의 픽셀 컬럼용의 스캔된 복셀 데이터를 동시에 처리하고 디스플레이 스크린용의 선정된 포맷내로 다수의 채널로부터의 픽셀 데이터를 결합하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제9항에 있어서, 선정된 포맷내로 픽셀 데이터를 결합하는 단계가, 장면의 수직 투시의 함수로서 디스플레이 스크린상에 상기 픽셀 데이터를 디스플레이 하기 위해 관련 위치를 변환시키는 단계, 및 디스플레이 스크린의 로울 배향의 함수로서 디스플레이 상에 상기 픽셀 데이터를 디스플레이하기 위해 관련 위치를 회전시키는 단계를 포함하는 것을 특징으로 하는 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US92585686A | 1986-09-11 | 1986-09-11 | |
US925856 | 1986-09-11 | ||
PCT/US1987/001781 WO1988002155A1 (en) | 1986-09-11 | 1987-07-24 | Scenographic process and processor for fast pictorial image generation |
Publications (2)
Publication Number | Publication Date |
---|---|
KR880701923A KR880701923A (ko) | 1988-11-07 |
KR910008461B1 true KR910008461B1 (ko) | 1991-10-15 |
Family
ID=25452350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019880700524A KR910008461B1 (ko) | 1986-09-11 | 1987-07-24 | 고속 화상 발생을 위한 원근도법 및 프로세서 |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP0281615B1 (ko) |
JP (1) | JPH0776990B2 (ko) |
KR (1) | KR910008461B1 (ko) |
CA (1) | CA1276297C (ko) |
DE (1) | DE3772968D1 (ko) |
ES (1) | ES2005312A6 (ko) |
IL (1) | IL83697A (ko) |
TR (1) | TR23655A (ko) |
WO (1) | WO1988002155A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0397071A3 (en) * | 1989-05-10 | 1993-06-16 | Honeywell Inc. | Method for perspective position mapping |
TW317954U (en) * | 1992-10-01 | 1997-10-11 | Hudson Soft Co Ltd | Image processing system including a processor side memory and a display side memory |
CN109492007A (zh) * | 2018-11-09 | 2019-03-19 | 南京天辰礼达电子科技有限公司 | 一种压实施工质量精细化图片快速生成算法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2051525A (en) * | 1979-06-15 | 1981-01-14 | Redifon Simulation Ltd | C.G.I.-Surface textures |
US4489389A (en) * | 1981-10-02 | 1984-12-18 | Harris Corporation | Real time video perspective digital map display |
FR2553543B2 (fr) * | 1982-03-25 | 1988-09-16 | Dassault Electronique | Procede pour engendrer a bord d'un aeronef une image synthetique du terrain survole |
-
1987
- 1987-07-24 EP EP87906227A patent/EP0281615B1/en not_active Expired - Lifetime
- 1987-07-24 DE DE8787906227T patent/DE3772968D1/de not_active Expired - Fee Related
- 1987-07-24 WO PCT/US1987/001781 patent/WO1988002155A1/en active IP Right Grant
- 1987-07-24 JP JP62505647A patent/JPH0776990B2/ja not_active Expired - Lifetime
- 1987-07-24 KR KR1019880700524A patent/KR910008461B1/ko not_active IP Right Cessation
- 1987-08-31 IL IL83697A patent/IL83697A/xx not_active IP Right Cessation
- 1987-09-09 TR TR87/0613A patent/TR23655A/xx unknown
- 1987-09-10 ES ES8702613A patent/ES2005312A6/es not_active Expired
- 1987-09-10 CA CA000546570A patent/CA1276297C/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
IL83697A (en) | 1991-08-16 |
EP0281615B1 (en) | 1991-09-11 |
EP0281615A1 (en) | 1988-09-14 |
JPH0776990B2 (ja) | 1995-08-16 |
CA1276297C (en) | 1990-11-13 |
DE3772968D1 (de) | 1991-10-17 |
WO1988002155A1 (en) | 1988-03-24 |
ES2005312A6 (es) | 1989-03-01 |
TR23655A (tr) | 1990-05-29 |
KR880701923A (ko) | 1988-11-07 |
JPH01501179A (ja) | 1989-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Samanta et al. | Load balancing for multi-projector rendering systems | |
KR0172462B1 (ko) | 렌더링 및 와핑 영상 생성 시스템 및 방법 | |
US7990397B2 (en) | Image-mapped point cloud with ability to accurately represent point coordinates | |
US6985143B2 (en) | System and method related to data structures in the context of a computer graphics system | |
Andújar et al. | Integrating Occlusion Culling and Levels of Detail through Hardly‐Visible Sets | |
US5963213A (en) | Method and system for accelerating warping | |
JP3151774B2 (ja) | 画像をディスプレイへ表示する方法 | |
US20030038811A1 (en) | System and method of line sampling object scene information | |
US20060080072A1 (en) | Optimized rendering of dynamic moving bodies | |
GB2316257A (en) | Method and apparatus for overlaying a bit map image on an environment map | |
US6088036A (en) | Method of generating an image | |
Faust et al. | Real-time global data model for the digital earth | |
US5719598A (en) | Graphics processor for parallel processing a plurality of fields of view for multiple video displays | |
US6731284B1 (en) | Method of and apparatus for performing perspective transformation of visible stimuli | |
Suter et al. | Automated generation of visual simulation databases using remote sensing and GIS | |
KR910008461B1 (ko) | 고속 화상 발생을 위한 원근도법 및 프로세서 | |
Dorffner et al. | Generation and visualization of 3D photo-models using hybrid block adjustment with assumptions on the object shape | |
Andújar Gran et al. | Relief impostor selection for large scale urban rendering | |
Chang et al. | Hierarchical simplification of city models to maintain urban legibility. | |
Scarlatos | Spatial data representations for rapid visualization and analysis | |
EP1602075A2 (en) | Visual simulation of dynamic moving bodies | |
Aliaga | Automatically reducing and bounding geometric complexity by using images | |
Weirichy et al. | Real Time Rendering for a Geographical Information System | |
Huang et al. | Visualizing massive terrain with transportation infrastructure by using continuous level of detail | |
Cai et al. | An image-based virtual reality prototype system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 19941007 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |