의료 영상 그중에서도 CT나 MRI와 같은 3차원 영상을 다루다 보면 자주 들을 수 있는 용어 VR.
오늘은 그 VR에 대해서 간단히 알아보고자 합니다.
Q. VR(Volume Rendering)이란 뭘까요?
과학적 시각화와 컴퓨터 그래픽스 분야에서 Volume Rendering은 3차원 스칼라 장 형태의 이산 샘플링 데이터를 2차원 투시로 보여주는 기술을 말합니다.
3차원 텍스쳐 정보를 활용하여 3차원의 꽉 찬 객체를 컴퓨터 화면상에서 그리는 일인 것이죠.
Q. VR(Volume Rendering)은 어떻게 하는 건가요?
VR 방법에는 크게 2가지 방법이 있습니다.
Texture Slicing 방법과 Ray Casting 방법입니다.
- Texture Slicing 방법
"Slicing 된 2차원 이미지를 연속해서 보여주자!!"라는 방식으로 검은 영역은 투명색으로 처리해버리고 나머지 밝은 영역을 적당히 알파 값으로 처리하는 것입니다.
우리가 일상 주변에서 피자를 자르는 방식이 여러 가지인 것처럼 Texture Slicing 방법도 2가지가 있습니다.
Axis-Aligned와 View-Aligned입니다.
Axis-Aligned 방법의 경우 주어진 데이터를 X, Y, Z 축으로 잘라서 볼륨을 그리자!라는 방법입니다.
그런데 이 방법에는 문제가 있습니다. 예를 들어 사람의 얼굴을 정면으로 바라보게 만들면 사실 평면과 다를 것이 없어서 볼륨을 그릴 수 없게 됩니다.
View-Aligned 방법의 경우 Axis-Aligned 방법을 보완하기 위해서 나온 방법으로 이미지를 자를 때 X, Y, Z 축으로 하지 말고 보는 방향과 수직이 되는 평면으로 자르자!라는 것입니다.
하지만 이 방법 역시 문제를 가지고 있었는 데 바라보는 방향이 계속 바뀌니까 슬라이스를 계속 추가해줬어야 합니다.
계속 슬라이스를 추가해준다라는 것은 계산량이 많고 최적화 문제가 발생하기 쉽다는 것을 의미하기도 하죠.
- Ray Casting 방법
Texture Slicing 방법에서 발생하는 문제를 해결하고 높은 퀄리티의 Rendering 이미지를 얻을 수 있는 방법의 등장입니다.
"2차원 평면 위의 픽셀 하나하나로 광선(Ray)을 쏜다고 가정하고 광선 위치의 모든 복셀의 색상을 합쳐서 해당 픽셀을 그려보자!"라는 방법입니다.
이렇게 하면 화면의 픽셀 수만큼만 연산을 하면 되고, 뷰(View)에 상관없이 Single Pass만으로 볼륨을 그릴 수 있습니다.
이 방법을 통해서 *Fragment shader를 사용할 수 있게 되었습니다.
*Fragment shader: Shader는 3D 컴퓨터 그래픽에서 최종적으로 화면에 출력되는 픽셀의 색을 지정해주는 함수인데 Fragment Shader는 "여기는 파란색이네 그런데 여긴 그림자 지니까 조금 더 어둡게 칠하자!"와 같은 방식을 이야기합니다.
Q. Ray Casting 방법으로 어떻게 Volume 이미지가 만들어지는 것인가요?
Ray Casting 방법은 아래와 같은 단계를 거치게 됩니다.
1. Ray Casting: 광선을 발사합니다.
2. Sampling: 광선과 부피가 교차하면서 선이 만들어지는 데 이 선에서 적당한 간격을 가지고 최종 색상을 정할 점들을 선택합니다.
3. Shading: 그림자, 빛 등의 요소를 고려해서 샘플링한 데이터의 색상을 결정합니다.
4. Compositing: 광선 위의 색이 결정된 샘플링 데이터의 색상을 모두 더합니다.
Q. 3단계 Shading에서 색상은 어떻게 결정하나요?
Ray Casting 방법을 보다 보면 3번째 단계에서 샘플링한 데이터의 색상을 결정하게 되는 데 이때 색을 결정하는 방법은 Transfer Function을 사용합니다.
Transfer Function은 히스토그램을 통해서 간격을 조절하고 해당 간격에 있는 색을 대략 이렇게 표시하겠다는 방식을 말합니다.
참고: https://lobotomi.tistory.com/35
'소년의 IT 쉽게 이해하기 > 의료 데이터 쉽게 이해하기' 카테고리의 다른 글
3D Modeling 방식 쉽게 이야기하기 (0) | 2022.03.16 |
---|---|
3D Modeling(3차원 형상 표현 기법) 쉽게 이야기하기 (0) | 2022.03.15 |
CT(Computed Tomography) 기술 쉽게 이야기하기 (0) | 2022.03.12 |
Dicom Standard 쉽게 이해하기 (0) | 2022.01.26 |
X-ray 쉽게 이야기하기 (0) | 2022.01.21 |
댓글