• 제목/요약/키워드: Efficient Ray Casting

검색결과 16건 처리시간 0.018초

Accurate and efficient GPU ray-casting algorithm for volume rendering of unstructured grid data

  • Gu, Gibeom;Kim, Duksu
    • ETRI Journal
    • /
    • 제42권4호
    • /
    • pp.608-618
    • /
    • 2020
  • We present a novel GPU-based ray-casting algorithm for volume rendering of unstructured grid data. Our volume rendering system uses a ray-casting method that guarantees accurate rendering results. We also employ the per-pixel intersection list concept in the Bunyk algorithm to guarantee an accurate result for non-convex meshes. For efficient memory access for the lists on the GPU, we represent the intersection lists for all faces as an array with our novel construction algorithm. With the intersection lists, we perform ray-casting on a GPU, and a GPU thread handles each ray. To increase ray-coherency in a thread block and improve memory access efficiency, we extend a prior image-tile-based work distribution method to fit modern GPU architectures. We also show that a prior approach using a per-thread local buffer to reduce redundant computation is not appropriate for modern GPU architectures. Instead, we take an on-demand calculation strategy that achieves better performance even though it allows duplicate computations. We applied our method to three unstructured grid datasets with different characteristics. With a GPU, our method achieved up to 36.5 times higher performance for the ray-casting process and 19.7 times higher performance for the whole volume rendering process compared with the Bunyk algorithm using a CPU core. Also, our approach showed up to 8.2 times higher performance than a GPU-based cell projection method while generating more accurate rendering results. These results demonstrate the efficiency and accuracy of our method.

몰입 가상현실 환경에서 겹쳐진 가상객체들의 효율적인 선택을 위한 펼침 시각화를 통한 객체 선택 방법 (Explosion Casting: An Efficient Selection Method for Overlapped Virtual Objects in Immersive Virtual Environments)

  • 오주영;이준
    • 한국콘텐츠학회논문지
    • /
    • 제18권3호
    • /
    • pp.11-18
    • /
    • 2018
  • 몰입 가상현실 환경에서 가상 객체들을 선택하고 조작하기 위해서는 사용자가 원하는 가상 객체를 빠르고 정확하게 선택할 수 있어야 한다. 가상현실에서 객체 선택을 위한 가장 알려진 접근 방법은 Ray-casting 방법이다. Ray-casting은 가상현실 환경에서 사용자의 손이나 시야 방향에서 직선으로 이동하는 가상의 선을 발사하고, 이 가상의 선이 발사되는 과정에서 충돌되는 가상 객체를 사용자가 선택할 수 있게 해주는 방법이다. 하지만, 가상 객체들이 겹쳐져 있는 상황에서는 사용자가 원하는 객체가 아닌 다른 객체들이 선택 될 수 있는 모호성 문제가 발생하게 된다. 이러한 방법을 해결하기 위해서 본 논문에서는 겹쳐진 가상 객체들 중 사용자가 원하는 객체를 선택하고자 하는 경우, 사용자가 겹쳐진 객체들의 그룹을 먼저 선택하게 한 후에 이 겹쳐진 객체들이 가지고 있는 기하학적인 연관관계를 계산하고 이를 사용자의 시점에서 겹쳐지지 않게 펼쳐서 시각화를 하는 Explosion-casting 방법을 제안한다. 제안한 방법의 평가를 위해서 기존의 Ray-casting 방법과 비교를 하였을 때, 겹쳐져 있는 가상 객체를 선택할 때 걸리는 속도와 정확도가 증가하는 결과를 보여주었다.

바운딩 박스 세분화를 통한 지형 렌더링의 가속화 (Acceleration of Terrain Rendering Using Bounding Box Subdivision)

  • 이은석;이진희;조인우;신병석
    • 한국게임학회 논문지
    • /
    • 제11권6호
    • /
    • pp.71-80
    • /
    • 2011
  • 최근의 3D게임이나 가상현실을 위한 지형 시각화 응용에서는 사실적인 장면을 렌더링 하기 위해 고화질 영상을 실시간에 제공하는 GPU기반의 광선투사법을 이용한다. 이 방법은 지형데이터의 크기가 증가할수록 샘플링 해야 하는 텍셀의 개수가 증가하기 때문에 렌더링 속도가 저하된다. 이러한 문제점을 해결하기 위해서 본 논문에서는 GPU에서 사진트리를 기반으로 수행되는 바운딩 박스 세분화를 이용하여 빈 공간이 제거된 바운딩 박스를 생성하고 이를 이용하여 광선투사법을 가속화하는 방법을 제안한다. 이 방법은 각 광선마다 빈 공간 도약을 위해 트리를 탐색하여 중복된 탐색연산을 수행해야 했던 기존의 방법과 달리 바운딩 박스를 이용하여 탐색 연산을 단 1번만 수행하도록 하여 수행속도를 가속화 하였다.

비정렬 격자 볼륨 렌더링을 위한 다중코어 CPU기반 메모리 효율적 광선 투사 병렬 알고리즘 (Memory Efficient Parallel Ray Casting Algorithm for Unstructured Grid Volume Rendering on Multi-core CPUs)

  • 김덕수
    • 정보과학회 논문지
    • /
    • 제43권3호
    • /
    • pp.304-313
    • /
    • 2016
  • 본 논문은 비정렬 격자 볼륨 렌더링을 위한 다중 코어 CPU기반의 메모리 효율적 광선 투사 병렬처리 알고리즘을 제안한다. 본 연구는 Bunyk 광선 투사(ray casting) 알고리즘에 기반을 두며, Bunyk 알고리즘의 높은 메모리 소모량 문제를 개선하기 위해 스레드별로 고정된 크기의 지역 버퍼를 할당한다. 지역 버퍼는 최근 방문된 면(face)의 정보를 저장하며, 이 정보는 다른 광선들에 의해 재사용되거나 다른 면의 정보로 대체된다. 지역 버퍼에 저장된 정보의 활용률을 높이기 위해 본 연구는 이미지 평면을 기반으로 일관성(coherency)이 높은 광선들을 하나의 광선 그룹으로 묶고, 생성된 광선 그룹들을 스레드들에게 분배한다. 각각의 스레드들은 할당 받은 광선 그룹들을 지역 버퍼를 활용하여 독립적으로 처리한다. 본 연구는 또한 지역 버퍼 활용률을 더욱 높이기 위해 면의 번호에 기반을 둔 해시 함수를 제안한다. 본 연구의 효용성을 확인하기 위해 제안하는 알고리즘을 서로 다른 크기의 비정렬 격자에 적용하였으며, 면 정보 저장을 위해 Bunyk 알고리즘 대비 약 6%의 메모리만 사용하여 정확한 볼륨 렌더링을 수행할 수 있었다. 이처럼 훨씬 적은 메모리 사용에도 불구하고 Bunyk 알고리즘과 대등한 성능을 보여주었으며, 대용량 데이터에 대해서는 최대 22% 높은 성능을 보여주었다. 이는 본 연구의 효용성 및 대용량 데이터의 볼륨 렌더링에 대한 적합성을 증명하는 결과이다.

효율적인 BCC 볼륨 데이터의 GPU 등가면 광선투사법 (Efficient GPU Isosurface Ray-casting of BCC Datasets)

  • 김민호;김현준
    • 한국컴퓨터그래픽스학회논문지
    • /
    • 제19권2호
    • /
    • pp.19-27
    • /
    • 2013
  • 본 연구에서는, 결과물의 우수함을 유지하면서도 기존 연구결과의 성능을 4-7배 향상시킨 실시간 GPU 등가면 볼륨 레이케스터를 제시한다. 이러한 성능 향상은 효율적인 빈공간 생략법과 분석적 그레디언트 계산법을 도입함으로써 가능하다. 빈공간 생략법은 스플라인 조각들의 BB-형식으로부터 만등어진 최소/최대값 옥트리에 기반하고 있고, 분석적 그레디언트 계산법은 보다 정확한 렌더링 결과를 제공할 뿐 아니라 더욱 빠른 계산이 가능하도록 한다.

정점분할을 이용한 GPU 기반 볼륨 렌더링의 가속 기법 (Acceleration of GPU-based Volume Rendering Using Vertex Splitting)

  • 유성열;이은석;신병석
    • 한국게임학회 논문지
    • /
    • 제12권2호
    • /
    • pp.53-62
    • /
    • 2012
  • 볼륨 광선 투사법은 볼륨 데이터를 가시화하는 기법 중 고화질 영상을 만들어내는 기법이다. 하지만 일반적으로 볼륨 데이터는 매우 크기 때문에 렌더링 시간이 오래 걸리는 문제가 있다. 이를 보완하기 위하여 최근에는 GPU를 이용하여 볼륨 광선 투사법을 가속화하는 많은 기법들이 연구되고 있다. 본 논문에서는 볼륨 광선 투사법을 가속화하기 위한 GPU 기반의 옥트리 탐색을 통한 효과적인 빈 공간 도약 기법을 제안한다. 여기서는 최대-최소 옥트리를 생성하고 옥트리의 루트 노드부터 정점분할을 이용하여 빈 공간을 식별한다. 찾아낸 빈 공간을 삭제함으로써 볼륨 데이터에서 의미 있는 객체를 둘러싸는 바운딩 다면체를 최소화 시킨다. 최소화 된 바운딩 다면체에 대해서만 렌더링을 진행함으로써 기존의 볼륨 광선 투사법과 비교하여 빠른 시간에 동일한 결과물을 생성한다.

가상내시경에서 충돌회피 기능을 이용한 효율적인 순항 기법 (Efficient Navigation Using Collision Avoidance In Virtual Endoscopy)

  • 김화진;신병석
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 가을 학술발표논문집 Vol.29 No.2 (2)
    • /
    • pp.436-438
    • /
    • 2002
  • 가상내시경에서 효과적인 진단과 사용자의 편의를 위해서는 자동순항(navigation) 기능이 필요하다. 자동순항을 위해서는 장기의 내벽과 충돌을 피하면서 부드럽게 카메라의 이동방향을 전환할 수 있어야 한다. 본 논문에서는 광선추적법(ray-casting)에 기반한 충돌회피기법과 그를 이용한 효율적인 순항 방법을 제안한다.

  • PDF

포인트 프리미티브를 이용한 실시간 볼륨 렌더링 기법 (Real-time Volume Rendering using Point-Primitive)

  • 강동수;신병석
    • 한국멀티미디어학회논문지
    • /
    • 제14권10호
    • /
    • pp.1229-1237
    • /
    • 2011
  • 직접 볼륨 렌더링은 반투명한 물체에 대한 고화질 영상 생성이 가능한 기법으로 광선 투사법이 대표적이다. 이것은 각 화소별로 오브젝트 공간상의 관심 영역을 샘플링하기 때문에 높은 해상도의 영상을 생성할 수 있지만, 각 샘플점마다 반복적으로 수행하는 텍스처 참조와 누적연산 때문에 렌더링 성능이 저하되는 문제가 있다. 최근에는 연산 능력이 매우 커진 GPU를 이용해 광선 투사법을 가속화하는 기법들이 많이 연구되고 있지만 이들 역시 전처리 단계 및 추가적인 메모리 사용이 불가피하다. 본 논문에서는 반투명 물체의 표현이 가능하고, 전처리 과정 및 추가적인 텍스처 메모리를 사용하지 않으면서 기존의 방법들보다 고속으로 볼륨 데이터를 가시화할 수 있는 포인트 프리미티브 기반의 새로운 볼륨 렌더링기법을 제안한다. 이 방법은 볼륨 데이터를 샘플링하여 포인트 프리미티브를 생성하고 이를 이미지 평면상에 투영하는 방식으로 수행속도가 매우 빠르다. 또한, 생성된 포인트 프리미티브를 실행시간에 추가 및 삭제할 수 있기 때문에 OTF를 변경해도 실시간 대응이 가능하다.

브릭 정점을 이용한 GPU 기반 볼륨 광선투사법 가속화 (Accelerating GPU-based Volume Ray-casting Using Brick Vertex)

  • 채수평;신병석
    • 한국컴퓨터그래픽스학회논문지
    • /
    • 제17권3호
    • /
    • pp.1-7
    • /
    • 2011
  • 최근에 GPU 기반의 볼륨 광선 투사법을 가속화하는 기법들이 많이 연구되고 있다. 하지만 이런 기법들은 CPU-GPU간 데이터 전송 시 병목 현상을 야기하고 계층구조를 표현하기 위한 추가적인 GPU 메모리 공간이 필요할 뿐만 아니라 불투명도 전이 함수가 변경되었을 때 실시간에 대응하지 못하는 문제점들이 발생할 수 있다. 본 논문에서는 이러한 문제점들을 해결하기 위해 GPU 기반의 효율적인 빈 공간 도약 기법을 제안한다. 브릭(brick) 안에 포함되는 복셀들의 최대 밀도 값을 하나의 정점에 저장하고 불투명도 전이 함수에 의하여 투명하다고 판별된 정점들을 기하 쉐이더에서 삭제한다. 이 정점들을 랜더링 시간에 기하 쉐이더의 입력 값으로 사용해 투명하지 않은 영역의 바운딩 박스를 만들어 광선이 효과적으로 진행하도록 한다. 생성된 정점들은 렌더링 중에 시점의 변화에 무관하게 사용할 수 있지만 불투명도 전이 함수가 변경되면 투명하지 않은 정점들을 다시 생성해야 한다. 이는 기하 쉐이더를 통해서 GPU 안에서 고속으로 생성되기 때문에 대화식 처리가 가능하다. 제안하는 방법은 기존 광선 투사법의 결과와 동일한 영상을 생성하며 렌더링 속도는 기존의 방법에 비해 최대 10배 이상 향상되었다.

개선된 공간 도약법을 이용한 고속 가상 내시경 기법 (High-Speed Virtual Endoscopy using Improved Space-Leaping)

  • 신병석;김혁
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제29권8호
    • /
    • pp.463-471
    • /
    • 2002
  • 가상 내시경을 구현하기 위해서는 세밀하고 정확한 원근 투영 영상의 고속생성과 충돌검출이 필수적이다. 본 논문에서는 고속 원근 볼륨 렌더링 기법을 이용하여 정확하면서도 빠른 렌더링이 가능한 가상 내시경 기술을 제안한다. 이 방법은 기본적으로 화질이 우수한 광선 투영법을 기반으로 하며 거리정보(distance information)를 이용하여 투명한 공간을 비약하도록 함으로써 렌더링 속도를 향상시키도록 하였다. 렌더링 시에는 광선의 진행 방향에 따라 샘플 간격을 가변적으로 조절하는 방법을 이용하여 화질의 손실을 최소화하면서 처리시간을 향상시킨다. 또한 전처리 단계에서 생성된 거리 정보를 이용하여 충돌 검출을 간단히 할 수 있는 방법을 제안한다.