KR102019179B1 - 사운드 트레이싱 장치 및 방법 - Google Patents

사운드 트레이싱 장치 및 방법 Download PDF

Info

Publication number
KR102019179B1
KR102019179B1 KR1020180165454A KR20180165454A KR102019179B1 KR 102019179 B1 KR102019179 B1 KR 102019179B1 KR 1020180165454 A KR1020180165454 A KR 1020180165454A KR 20180165454 A KR20180165454 A KR 20180165454A KR 102019179 B1 KR102019179 B1 KR 102019179B1
Authority
KR
South Korea
Prior art keywords
ray
sound
information
depth
adaptive
Prior art date
Application number
KR1020180165454A
Other languages
English (en)
Inventor
박우찬
김은재
Original Assignee
세종대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 세종대학교산학협력단 filed Critical 세종대학교산학협력단
Priority to KR1020180165454A priority Critical patent/KR102019179B1/ko
Application granted granted Critical
Publication of KR102019179B1 publication Critical patent/KR102019179B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/302Electronic adaptation of stereophonic sound system to listener position or orientation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/305Electronic adaptation of stereophonic audio signals to reverberation of the listening space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/01Enhancing the perception of the sound image or of the spatial distribution using head related transfer functions [HRTF's] or equivalents thereof, e.g. interaural time difference [ITD] or interaural level difference [ILD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Stereophonic System (AREA)

Abstract

본 발명은 사운드 트레이싱 장치 및 방법에 관한 것으로, 사운드 트레이싱 장치는 가시성 테스트 레이 정보와 사운드 전파 레이 정보에 관해 공간 적응형 깊이 제어를 수행하여 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보를 생성하는 셋업 처리부, 상기 가시성 테스트 적응 레이 정보 또는 상기 사운드 전파 적응 레이 정보를 기초로 해당 음향 레이를 생성하는 음향 레이 생성부 및 상기 해당 음향 레이와 충돌되는 기하 구조에 관한 정보를 수신하고 상기 해당 음향 레이의 특성에 따라 전파 음향 경로 테스트 또는 반향 기하 수집을 진행할지 여부를 결정하며 상기 셋업 처리부에 상기 사운드 전파 레이 정보를 제공하는 음향 레이 처리부를 포함한다.

Description

사운드 트레이싱 장치 및 방법{SOUND TRACING APPARATUS AND METHOD}
본 발명은 사운드 처리 기술에 관한 것으로, 보다 상세하게는 공간에 따라 사운드 전파를 위한 최대 깊이를 조절하여 사운드 전파의 효율성을 향상시킬 수 있는 사운드 트레이싱 장치 및 방법에 관한 것이다.
최근 모바일 기술, 그래픽스 기술 및 감각의 입/출력 기술 등의 발달로 인해, 가상현실 기술에 대한 관심이 급격히 증가되고 있다. 대부분의 가상현실 관련 기술들은 시각적인 요소에만 집중되어 있으나, 현실감 있는 가상현실 환경을 지원하기 위해서는 시각적 공간감 이외에 청각적인 공간감의 재현이 필수적으로 요구된다. 청각적 공간감을 재현하기 위해 멀티채널오디오 시스템이나 머리전달함수 (HRTF: Head Related Transfer Function)를 이용한 3D 사운드 기술이 사용된다.
그러나, 3D 사운드 재현을 위해 사용되는 멀티채널오디오는 전용 스피커 시스템이 필요하고, 해당 스피커 시스템이 설치될 공간 필요 등의 문제점들이 존재한다. 머리전달함수를 기반으로 한 대부분의 3D 사운드 기술은 미리 계산된 음향조절필터를 사용하거나 직육면체 모양의 슈박스와 같은 간단한 가상공간 안에서 청각적 공간감을 재현한다. 가상공간상의 주변 환경과 복잡한 object의 material에 대한 물리적인 효과가 반영 되어있지 않기 때문에 이러한 기술은 현실감 있는 사운드를 재현하기에 한계가 존재한다.
한국등록특허 제10-1676634(2016.11.10)호
본 발명의 일 실시예는 공간에 따라 사운드 전파를 위한 최대 깊이를 조절하여 사운드 전파의 효율성을 향상시킬 수 있는 사운드 트레이싱 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 사운드 전파 모드에 공간 적응형 깊이 제어 모드를 추가하고 공간 적응형 깊이 제어 모드의 주기적 활성화를 통해 최대 깊이를 동적으로 결정할 수 있는 사운드 트레이싱 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 이전 프레임들의 깊이별 평균 유효 프레임 수를 기초로 공간에 따른 최대 깊이를 조절하여 사운드 전파 단계의 계산 비용을 줄일 수 있는 사운드 트레이싱 장치 및 방법을 제공하고자 한다.
실시예들 중에서, 사운드 트레이싱 장치는 가시성 테스트 레이 정보와 사운드 전파 레이 정보에 관해 공간 적응형 깊이 제어를 수행하여 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보를 생성하는 셋업 처리부, 상기 가시성 테스트 적응 레이 정보 또는 상기 사운드 전파 적응 레이 정보를 기초로 해당 음향 레이를 생성하는 음향 레이 생성부 및 상기 해당 음향 레이와 충돌되는 기하 구조에 관한 정보를 수신하고 상기 해당 음향 레이의 특성에 따라 전파 음향 경로 테스트 또는 반향 기하 수집을 진행할지 여부를 결정하며 상기 셋업 처리부에 상기 사운드 전파 레이 정보를 제공하는 음향 레이 처리부를 포함한다.
상기 사운드 트레이싱 장치는 가속 구조(AS, Acceleration Structure)에서 상기 해당 음향 레이와 충돌되는 기하 구조의 존재 여부를 검출하는 횡단 교차 테스트부를 더 포함할 수 있다.
상기 사운드 트레이싱 장치는 상기 기하 구조가 존재하면 상기 기하 구조에 관한 정보를 생성하여 상기 음향 레이 처리부에 제공하는 충돌 지점 처리부를 더 포함할 수 있다.
상기 음향 레이 처리부는 상기 전파 음향 경로 테스트를 통해 직접 음향 경로, 투과 음향 경로, 반사 음향 경로 및 회절 음향 경로를 검색하거나 또는 상기 반향 기하 수집을 통해 상기 기하 구조에 관한 반향 시간을 산출하여, 충돌응답 정보를 생성할 수 있다.
상기 사운드 트레이싱 장치는 상기 충돌응답 정보를 기초로 사운드 렌더링을 수행하는 사운드 렌더링부를 더 포함할 수 있다.
상기 셋업 처리부는 사운드 전파 모드로서 직접투과 모드, 반사회절 모드, 잔향 모드 및 공간 적응형 깊이 제어 모드 간의 순차적 활성화를 제어할 수 있다.
상기 셋업 처리부는 상기 공간 적응형 깊이 제어 모드가 활성화된 경우에만 상기 공간 적응형 깊이 제어를 수행할 수 있다.
상기 셋업 처리부는 상기 공간 적응형 깊이 제어 모드의 활성화를 특정 프레임 간격마다 주기적으로 제어할 수 있다.
상기 셋업 처리부는 이전 프레임 정보를 수신하고 ADC 변수들을 초기화하는 단계, 상기 이전 프레임 정보를 기초로 깊이별 유효 프레임을 검출하여 버퍼에 저장하는 단계, 상기 버퍼에 저장된 프레임 수가 맥스 프레임 수와 같은 경우 상기 버퍼에 저장된 프레임을 기초로 깊이별 평균 유효 프레임 수를 산출하는 단계 및 상기 깊이별 평균 유효 프레임 수를 기초로 최대 깊이를 결정하는 단계로 구성된 상기 공간 적응형 깊이 제어를 수행할 수 있다.
상기 셋업 처리부는 상기 이전 프레임 정보를 기초로 깊이별 유효 경로의 존재 유무를 기초로 상기 유효 프레임을 검출할 수 있다.
상기 셋업 처리부는 상기 버퍼에 저장된 프레임 수가 맥스 프레임 수보다 작은 경우 해당 프레임에 대한 공간 적응형 깊이 제어를 종료할 수 있다.
상기 셋업 처리부는 내림차순으로 상기 깊이별 평균 유효 프레임 수를 검사하여 상기 깊이별 평균 유효 프레임 수가 기준 임계값과 보다 큰 경우 해당 깊이를 상기 최대 깊이로서 결정할 수 있다.
상기 음향 레이 처리부는 상기 해당 음향 레이의 특성에 따라 상기 최대 깊이를 적용하여 상기 전파 음향 경로 테스트를 수행할 수 있다.
실시예들 중에서, 사운드 트레이싱 방법은 가시성 테스트 레이 정보와 사운드 전파 레이 정보에 관해 공간 적응형 깊이 제어를 수행하여 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보를 생성하는 단계, 상기 가시성 테스트 적응 레이 정보 또는 상기 사운드 전파 적응 레이 정보를 기초로 해당 음향 레이를 생성하는 단계, 가속 구조(AS, Acceleration Structure)에서 상기 해당 음향 레이와 충돌되는 기하 구조의 존재 여부를 검출하는 단계, 상기 기하 구조가 존재하면 상기 기하 구조에 관한 정보를 생성하는 제공하는 단계, 상기 해당 음향 레이와 충돌되는 기하 구조에 관한 정보를 수신하고 상기 해당 음향 레이의 특성에 따라 전파 음향 경로 테스트 또는 반향 기하 수집을 진행할지 여부를 결정하여 충돌응답 정보를 생성하는 단계 및 상기 충돌응답 정보를 기초로 사운드 렌더링을 수행하는 단계를 포함한다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 사운드 트레이싱 장치 및 방법은 사운드 전파 모드에 공간 적응형 깊이 제어 모드를 추가하고 공간 적응형 깊이 제어 모드의 주기적 활성화를 통해 최대 깊이를 동적으로 결정할 수 있다.
본 발명의 일 실시예에 따른 사운드 트레이싱 장치 및 방법은 이전 프레임들의 깊이별 평균 유효 프레임 수를 기초로 공간에 따른 최대 깊이를 조절하여 사운드 전파 단계의 계산 비용을 줄일 수 있다.
도 1은 사운드 트레이싱의 파이프라인을 설명하는 도면이다.
도 2는 가상 공간 상에서 사운드 전파 경로의 종류를 설명하는 도면이다.
도 3은 본 발명의 일 실시예에 따른 사운드 트레이싱 장치를 설명하는 블록도이다.
도 4는 도 3에 있는 사운드 트레이싱 장치에서 수행되는 사운드 트레이싱 과정을 설명하는 순서도이다.
도 5는 도 3에 있는 사운드 트레이싱 장치에서 수행되는 사운드 전파 과정을 설명하는 도면이다.
도 6은 도 3에 있는 셋업 처리부에서 수행되는 사운드 전파 모드의 상태전이 과정을 설명하는 도면이다.
도 7은 도 3에 있는 셋업 처리부에서 수행되는 공간 적응형 깊이 제어 과정을 설명하는 도면이다.
도 8은 본 발명의 일 실시예에 따른 사운드 트레이싱 장치에서 수행된 ADC에 따른 깊이별 음향 레이 수 및 프레임 시간을 설명하는 도면이다.
도 9는 본 발명의 일 실시예에 따른 사운드 트레이싱 장치에서 수행된 ADC에 따른 사운드 전파 단계별 감소율을 설명하는 도면이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 사운드 트레이싱의 파이프라인을 설명하는 도면이다.
도 1을 참조하면, 사운드 트레이싱(sound tracing) 파이프라인(pipeline)은 사운드 합성(sound synthesis), 사운드 전파(sound propagation), 사운드 생성(sound generation, auralization) 단계로 구성될 수 있다. 사운드 트레이싱 처리 단계 중에 사운드 전파 단계는 가상현실에 몰입감을 부여하는 가장 중요한 단계에 해당할 수 있고, 계산 복잡도가 높고 계산 시간이 가장 오래 걸리는 단계에 해당할 수 있다. 또한, 이 단계의 가속여부가 사운드 트레이싱의 실시간 처리를 좌우할 수 있다. 사운드 합성 단계는 사용자의 상호작용에 따른 사운드 효과를 생성하는 단계에 해당할 수 있다. 예를 들어, 사운드 합성은 사용자가 문을 두드리거나 또는 물건을 떨어뜨린 경우 발생하는 소리에 관한 처리를 수행할 수 있고, 기존 게임, UI등에서 일반적으로 사용되는 기술에 해당할 수 있다.
사운드 전파 단계는 합성된 사운드가 가상현실을 통해 청취자에게 전달되는 과정을 시뮬레이션 하는 단계로 가상현실의 음향적 특성(반사계수, 흡수계수 등)과 소리의 특성(반사, 흡수, 투과 등)을 가상현실의 기하적 특성(scene geometry)에 기반하여 처리하는 단계에 해당할 수 있다. 사운드 생성 단계는 전파 단계에서 계산된 소리의 특성값 (반사/투과/흡수 계수, 거리 감쇠 특성 등)을 이용하여 청취자 스피커의 구성을 바탕으로 입력 음향을 재생성하는 단계에 해당할 수 있다.
도 2는 가상 공간 상에서 사운드 전파 경로의 종류를 설명하는 도면이다.
도 2를 참조하면, 직접 경로(Direct Path)는 청취자(Listener)와 사운드 소스(Sound source) 사이에 어떤 장애물(Obstruction)도 없이 직접적으로 전달되는 경로에 해당할 수 있다. 반사 경로(Reflection Path)는 사운드가 장애물과 충돌 후 반사되어 청취자에게 도달하는 경로에 해당하고, 투과 경로(Transmission Path)는 청취자와 사운드 소스 사이에 장애물이 있을 때, 사운드가 장애물을 투과하여 청취자에게 전달되는 경로에 해당할 수 있다.
사운드 트레이싱은 다수개의 사운드 소스들의 위치에서 음향 레이(acoustic ray)를 슈팅(shooting)하고 청취자 위치에서 음향 레이를 슈팅할 수 있다. 슈팅된 각각의 음향 레이는 자신과 충돌된 기하 구조 물체를 찾고, 충돌된 물체에 대하여 반사, 투과, 회절에 해당하는 음향 레이를 생성할 수 있다. 이러한 과정은 재귀적으로 반복 수행될 수 있다. 이렇게 사운드 소스들에서 슈팅된 음향 레이와 청취자에서 슈팅된 음향 레이들은 서로 만나게 될 수 있으며, 만나게 되는 경로를 사운드 전파 경로(Sound propagation path)라고 할 수 있다. 결과적으로, 사운드 전파 경로는 사운드 소스 위치에서 출발한 사운드가 반사, 투과, 흡수, 회절 등을 거쳐서 청취자에 도착하는 유효한 경로를 의미할 수 있다. 최종 사운드는 이러한 사운드 전파 경로들을 가지고 계산될 수 있다.
도 3은 본 발명의 일 실시예에 따른 사운드 트레이싱 장치를 설명하는 도면이다.
도 3을 참조하면, 사운드 트레이싱 장치(300)는 셋업 처리부(310), 음향 레이 생성부(320), 횡단 교차 테스트부(330), 충돌 지점 처리부(340), 음향 레이 처리부(350), 사운드 렌더링부(360) 및 제어부(370)를 포함할 수 있다.
셋업 처리부(310)는 가시성 테스트 레이 정보와 사운드 전파 레이 정보에 관해 공간 적응형 깊이 제어를 수행하여 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보를 생성할 수 있다. 가시성 테스트 레이 정보는 청취자 레이(listener lay) 생성 정보와 소스 레이(source ray) 생성 정보를 포함할 수 있고, 사운드 전파 레이 정보는 음향 레이 처리부(350)에 의해 제공되는 음향 레이 정보에 해당할 수 있다. 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보는 공간 적응형 깊이 제어를 수행한 결과 산출되는 최대 깊이 정보를 포함하는 음향 레이 정보에 해당할 수 있다.
일 실시예에서, 셋업 처리부(310)는 사운드 전파 모드로서 직접투과 모드, 반사회절 모드, 잔향 모드 및 공간 적응형 깊이 제어 모드 간의 순차적 활성화를 제어할 수 있다. 즉, 셋업 처리부(310)는 사운드 전파 모드의 상태 전이를 제어할 수 있고, 직접투과 모드 종료 후 반사회절 모드로, 반사회적 모드 종료 후 잔향 모드로, 잔향 모드 종료 후 공간 적응형 깊이 제어 모드로의 순차적 활성화를 통해 상태 전이를 제어할 수 있다. 이에 대해서는 도 6에서 보다 자세히 설명한다.
일 실시예에서, 셋업 처리부(310)는 공간 적응형 깊이 제어 모드가 활성화된 경우에만 공간 적응형 깊이 제어를 수행할 수 있다. 따라서, 셋업 처리부(310)는 공간 적응형 깊이 제어 모드가 비활성화된 경우 직접투과 모드, 반사회절 모드 및 잔향 모드 간의 상태 전이만을 수행할 수 있다. 셋업 처리부(310)는 공간 적응형 깊이 제어 모드의 활성화 여부를 확인할 수 있고, 해당 모드의 활성화가 확인된 경우에만 공간 적응형 깊이 제어를 수행하여 최대 깊이를 적응적으로 결정할 수 있다.
일 실시예에서, 셋업 처리부(310)는 공간 적응형 깊이 제어 모드의 활성화를 특정 프레임 간격마다 주기적으로 제어할 수 있다. 셋업 처리부(310)는 공간 적응형 깊이 제어 모드의 주기적 활성화를 통해 일정 간격으로 최대 깊이를 조절할 수 있다. 예를 들어, 셋업 처리부(310)는 30 프레임 간격마다 공간 적응형 깊이 제어 모드를 활성화시킬 수 있고, 30 프레임 중 초기 프레임들에 대한 공간 적응형 깊이 제어를 통해 최대 깊이를 결정할 수 있다. 따라서, 사운드 트레이싱 장치(300)는 30 프레임 중 이후 프레임에 대해 최대 깊이를 적용하여 사운드 트레이싱 과정을 수행할 수 있다.
일 실시예에서, 셋업 처리부(310)는 이전 프레임 정보를 수신하고 ADC 변수들을 초기화하는 단계, 이전 프레임 정보를 기초로 깊이별 유효 프레임을 검출하여 버퍼에 저장하는 단계, 버퍼에 저장된 프레임 수가 맥스 프레임 수와 같은 경우 버퍼에 저장된 프레임을 기초로 깊이별 평균 유효 프레임 수를 산출하는 단계 및 깊이별 평균 유효 프레임 수를 기초로 최대 깊이를 결정하는 단계로 구성된 공간 적응형 깊이 제어를 수행할 수 있다. 다른 실시예에서, 셋업 처리부(310)는 상기의 각 단계를 독립적으로 수행하는 복수의 모듈들을 포함하여 구현될 수 있다. 이에 대해서는 도 7에서 보다 자세히 설명한다.
일 실시예에서, 셋업 처리부(310)는 이전 프레임 정보를 기초로 깊이별 유효 경로의 존재 유무를 기초로 유효 프레임을 검출할 수 있다. 일 실시예에서, 셋업 처리부(310)는 버퍼에 저장된 프레임 수가 맥스 프레임 수보다 작은 경우 해당 프레임에 대한 공간 적응형 깊이 제어를 종료할 수 있다. 일 실시예에서, 셋업 처리부(310)는 내림차순으로 깊이별 평균 유효 프레임 수를 검사하여 깊이별 평균 유효 프레임 수가 기준 임계값과 보다 큰 경우 해당 깊이를 최대 깊이로서 결정할 수 있다.
음향 레이 생성부(320)는 가시성 테스트 적응 레이 정보 또는 사운드 전파 적응 레이 정보를 기초로 해당 음향 레이를 생성할 수 있다. 음향 레이 생성부(320)는 셋업 처리부(310)에 의해 제공되는 레이 정보를 기초로 생성할 음향 레이의 시작점(origin)과 방향(direction)을 산출할 수 있다. 음향 레이 생성부(320)는 산출된 음향 레이의 방향을 정규화(normalization)할 수 있고, 음향 레이의 길이를 산출할 수 있다. 음량 레이 생성부(320)는 생성된 음향 레이를 횡단 교차 테스트부(330)에 제공할 수 있다.
횡단 교차 테스트부(330)는 가속 구조(AS, Acceleration Structure)에서 해당 음향 레이와 충돌되는 기하 구조의 존재 여부를 검출할 수 있다. 횡단 교차 테스트부(330)는 가속 구조에서 가시성 테스트 레이, 가시성 테스트 반사 레이 및 경로 테스트 레이를 포함하는 음향 레이를 해당 입력 버퍼를 통해 읽어올 수 있고, 가속 구조 상에서 음향 레이와 충돌하는 공간을 구성하는 삼각형(triangle)이 있는지 여부를 분석할 수 있다. 횡단 교차 테스트부(330)는 충돌 검사를 위하여 횡단(traversal) 테스트와 레이-삼각형 교차(ray-triangle intersection) 테스트를 반복 수행할 수 있다. 횡단 교차 테스트부(330)는 해당 분석 결과를 해당 출력 버퍼에 저장할 수 있다.
충돌 지점 처리부(340)는 기하 구조가 존재하면 기하 구조에 관한 정보를 생성하여 음향 레이 처리부(350)에 제공할 수 있다. 충돌 지점 처리부(340)는 횡단 교차 테스트부(330)로부터 음향 레이와의 충돌 지점에 관한 분석 결과를 수신하여 음향 레이와 기하 구조(geometry) 사이의 충돌 지점(hit point)을 산출할 수 있다. 충돌 지점 처리부(340)는 충돌 발생이 확인되지 않은 레이 미스(ray miss)의 경우 별도의 연산없이 수신된 신호를 바이패스(bypass)시킬 수 있다. 충돌 지점 처리부(340)는 충돌 발생이 확인된 경우 해당 충돌 삼각형 식별자(hit triangle identifier)에 대한 삼각형 정보 데이터(triangle information data)를 요청할 수 있다. 충돌 지점 처리부(340)는 산출된 충돌 지점 및 해당 삼각형 정보 데이터를 음향 레이 처리부(350)에 제공할 수 있다.
음향 레이 처리부(350)는 해당 음향 레이와 충돌되는 기하 구조에 관한 정보를 수신하고 해당 음향 레이의 특성에 따라 전파 음향 경로 테스트 또는 반향 기하 수집을 진행할지 여부를 결정하며 셋업 처리부(310)에 사운드 전파 레이 정보를 제공할 수 있다. 음향 레이 처리부(350)는 사운드 전파 시뮬레이션(sound propagation simulation)을 수행하는 핵심 기능블록에 해당할 수 있고, 충돌 지점 처리부(340)를 통해 전달받은 정보의 음향 레이 특성에 따라 전파 음향 경로 테스트 또는 반향 기하 수집에 관한 진행을 결정할 수 있다. 일 실시예에서, 음향 레이 처리부(350)는 전파 음향 경로 테스트와 반향 기하 수집을 각각 수행하는 별도의 독립 모듈들로 구성될 수 있고, 각각의 모듈에 의해 산출된 결과는 사운드 전파 모드에 따라 선별되어 사운드 렌더링부(360)에 제공될 수 있다.
일 실시예에서, 음향 레이 처리부(350)는 전파 음향 경로 테스트를 통해 직접 음향 경로, 투과 음향 경로, 반사 음향 경로 및 회절 음향 경로를 검색하거나 또는 반향 기하 수집을 통해 기하 구조에 관한 반향 시간을 산출하여, 충돌응답 정보를 생성할 수 있다. 보다 구체적으로, 음향 레이 처리부(350)는 전파 음향 경로 테스트(propagation sound path test)를 통해 직접 음향 경로(direct sound path), 투과 음향 경로(transmission sound path), 반사 음향 경로(reflection sound path)를 찾을 수 있다. 음향 레이 처리부(350)는 회절 음향 경로(diffraction sound path)를 찾기 위해 균일 회절 이론(UTD, Uniform Theory Diffraction)을 사용할 수 있고, 반사 음향 경로를 찾기 위해 이미지 소스 기법(image source method)을 사용할 수 있다.
또한, 음향 레이 처리부(350)는 반향 시간(reverb time) 산출에 필요한 반향 기하 구조(reverb geometry) 정보를 산출할 수 있다. 여기에서, 반향 시간은 자연스러운 반향음(reverb sound)의 생성을 위한 주요 요소 중 하나에 해당할 수 있다. 음향 레이 처리부(350)는 청취자 음향 레이(listener ray)로 찾은 충돌 삼각형 정보와 소스 음향 레이(source ray)로 찾은 충돌 삼각형 정보를 이용하여 반향 시간을 산출할 수 있다.
일 실시예에서, 음향 레이 처리부(350)는 해당 음향 레이의 특성에 따라 최대 깊이를 적용하여 전파 음향 경로 테스트를 수행할 수 있다. 음향 레이 처리부(350)는 셋업 처리부(310)가 공간 적응형 깊이 제어를 수행하여 산출한 최대 깊이를 기초로 전파 음향 경로 테스트를 수행할 수 있다. 기존의 사운드 전파 방식은 음향 레이의 반사 수에 상관없이 최초에 설정된 깊이 정보를 만족할때까지 또는 장면(scene) 범위를 넘어갈 때까지 반사를 재귀적으로 수행하는 방식으로서 공간에 따라 비효율적으로 동작할 수 있다. 음향 레이 처리부(350)는 공간에 따라 적응적으로 결정되는 최대 깊이를 전파 음향 경로 테스트에 적용함으로써 사운드 전파 단계의 계산 부하를 줄일 수 있다.
사운드 렌더링부(360)는 충돌응답 정보를 기초로 사운드 렌더링을 수행할 수 있다. 보다 구체적으로, 사운드 렌더링부(360)는 음향 레이 처리부(350)로부터 제공된 정보들을 기초로 탐색된 적어도 하나의 사운드 경로 각각에 관해 경로 사운드 렌더링(path sound rendering)과 반향 사운드 렌더링(reverb sound rendering)을 수행하여 경로 사운드 렌더링 정보와 반향 사운드 렌더링 정보를 생성할 수 있다.
제어부(370)는 사운드 트레이싱 장치(300)의 전체적인 동작을 제어하고, 셋업 처리부(310), 음향 레이 생성부(320), 횡단 교차 테스트부(330), 충돌 지점 처리부(340), 음향 레이 처리부(350) 및 사운드 렌더링부(360) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.
도 4는 도 3에 있는 사운드 트레이싱 장치에서 수행되는 사운드 트레이싱 과정을 설명하는 순서도이다.
도 4를 참조하면, 사운드 트레이싱 장치(300)는 셋업 처리부(310)를 통해 가시성 테스트 레이 정보와 사운드 전파 레이 정보에 관해 공간 적응형 깊이 제어를 수행하여 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보를 생성할 수 있다(단계 S410). 사운드 트레이싱 장치(300)는 음향 레이 생성부(320)를 통해 가시성 테스트 적응 레이 정보 또는 사운드 전파 적응 레이 정보를 기초로 해당 음향 레이를 생성할 수 있다(단계 S420). 사운드 트레이싱 장치(300)는 횡단 교차 테스트부(330)를 통해 가속 구조에서 해당 음향 레이와 충돌되는 기하 구조의 존재 여부를 검출할 수 있다(단계 S430).
사운드 트레이싱 장치(300)는 충돌 지점 처리부(340)를 통해 기하 구조가 존재하면 기하 구조에 관한 정보를 생성할 수 있다(단계 S440). 사운드 트레이싱 장치(300)는 음향 레이 처리부(350)를 통해 해당 음향 레이와 충돌되는 기하 구조에 관한 정보를 수신하고 해당 음향 레이의 특성에 따라 전파 음향 경로 테스트 또는 반향 기하 수집을 진행할지 여부를 결정하여 충돌응답 정보를 생성할 수 있다(단계 S450). 사운드 트레이싱 장치(300)는 사운드 렌더링부(360)를 통해 충돌응답 정보를 기초로 사운드 렌더링을 수행할 수 있다(단계 S460).
도 5는 도 3에 있는 사운드 트레이싱 장치에서 수행되는 사운드 전파 과정을 설명하는 도면이다.
도 5를 참조하면, 사운드 트레이싱 장치(300)는 SetupProcessing, RayGeneration, Travesal & Intersection Test(TnI), HitPointCalc, Propagation Path Validator & Reverb Geometry Collector(PPV&RGC), PathReverbIRCalc 단계로 구성된 사운드 전파 과정을 수행할 수 있다.
먼저, SetupProcessing 단계는 셋업 처리부(310)에 의해 수행될 수 있다. SetupProcessing 단계는 mode를 제어하면서, 가시성 테스트 레이 생성 정보를 준비하고, 준비된 가시성 테스트 레이 생성 정보와 PPV&RGC에서 생성된 사운드 전파 레이 생성 정보를 선택할 수 있다. 가시성 테스트 레이는 2가지 타입으로 구성되는데, 이는 청취자 음향 레이 생성 정보와 사운드 음향 레이 생성 정보에 해당할 수 있다. 사운드 전파 레이는 사운드 전파 레이 타입, 생성될 음향 레이의 원점정보, 생성될 음향 레이의 방향 정보 등을 포함할 수 있고, 음향 레이 타입에 따라 부가정보를 더 포함할 수 있다. 사운드 전파 레이의 타입은 가시성 테스트 반사 레이, 경로 테스트 레이, 널(null) 레이를 포함할 수 있다. 생성된 음향 레이 정보는 RayGeneration으로 전달될 수 있다. 또한 SetupProcessing 단계는 공간 적응형 깊이 제어(Adaptive Depth Control, ADC) 단계가 추가되어 구현될 수 있고, 공간 적응형 깊이 제어 모드의 활성화에 따라 주기적으로 동작할 수 있다.
RayGeneration 단계는 음향 레이 생성부(320)에 의해 수행될 수 있다. RayGeneration 단계는 가시성 테스트 레이 생성 정보 또는 사운드 전파 레이 생성 정보를 이용하여 해당 음향 레이를 생성할 수 있다. RayGeneration 단계는 전달받은 정보를 이용하여 생성될 음향 레이의 시작점과 방향을 계산할 수 있다. 계산된 음향 레이의 방향은 정규화될 수 있고, 음향 레이의 길이가 산출될 수 있다. 생성된 음향 레이는 Traversal & Intersection Test 단계의 입력으로 전달될 수 있다.
Traversal & Intersection Test(TnI) 단계는 횡단 교차 테스트부(330)에 의해 수행될 수 있다. TnI 단계는 RayGeneration 단계에서 생성된 음향 레이(가시성 테스트 레이, 가시성 테스트 반사 레이, 경로 테스트 레이)를 TnI 입력 버퍼로부터 읽어오고 가속 구조에서 음향 레이와 충돌하는 삼각형이 있는지 검사할 수 있다. 충돌검사를 위해서, TnI 단계는 가속 구조에 대한 횡단(traversal)과 레이-삼각형 교차 테스트를 반복 수행할 수 있다. TnI 단계의 판별 결과는 TnI 출력 버퍼에 저장될 수 있다.
HitPointCalc 단계는 충돌 지점 처리부(340)에 의해 수행될 수 있다. HitPointCalc 단계는 TnI 출력 버퍼로부터 전달된 결과를 이용하여 음향 레이와 기하 구조 사이의 충돌 지점을 계산하는 단계에 해당할 수 있다. 만약 ray miss가 발생한 경우 어떠한 연산도 하지 않고 바이패스(bypass)할 수 있다. Ray hit가 발생한 경우, HitPointCalc 단계는 해당 충돌 삼각형 식별자(hit triangle ID)에 대한 삼각형 정보 데이터(triangle info. data)를 요청할 수 있다. 계산된 결과와 충돌 삼각형 정보 데이터(hit triangle info. data)는 PPV&RGC 단계로 전달될 수 있다.
PPVnRGC 단계는 음향 레이 처리부(350)에 의해 수행될 수 있다. PPVnRGC 단계는 사운드 전파 시뮬레이션을 수행하는 핵심 기능블록으로써, 전달받은 데이터의 음향 레이 특성에 따라 전파 사운드 경로 테스트를 진행할지 반향 기하 수집을 진행할지 결정할 수 있다. PPVnRGC 단계는 Propagation Path Validator (PPV)와 Reverb Geometry Collector (RGC)로 구성될 수 있다. PPV와 RGC의 충돌 응답 계산 관련 출력은 사운드 전파 모드에 따라 PathReverbIRCalc 단계로 전달될 수 있다. 사운드 전파 모드가 경로 모드인 경우는 PPV의 출력이 전달될 수 있고, 반향 모드인 경우는 RGC의 출력이 전달될 수 있다.
PPV는 직접 음향 경로, 투과 음향 경로, 반사 음향 경로를 찾을 수 있다. PPV는 회절 음향 경로를 찾기 위해 균일 회절 이론(uniform theory diffraction, UTD)을 사용할 수 있고, 반사 음향 경로를 찾기 위해 이미지 소스 기법(image source method)을 사용할 수 있다. SetupProcessing 단계로 전달되는 음향 레이 생성정보는 경로 테스트 레이, 청취자 가시성 테스트 반사 레이, 널(null) 레이에 해당할 수 있다. 만약 직접 음향 경로, 투과 음향 경로, 회절 음향 경로 또는 반사 음향 경로를 찾았다면, PPV는 충돌 응답 계산에 필요한 정보를 생성하여 PathReverbIRCalc 단계로 전달할 수 있다.
RGC는 반향 시간 계산에 필요한 반향 기하 구조 정보를 계산할 수 있다. 반향 시간은 자연스러운 반향 음향 생성을 위한 중요한 요소 중 하나로써, Eyring이 제안한 반향 시간 계산방법을 사용할 수 있다. 이를 위해, 청취자 음향 레이로 찾은 충돌 삼각형 정보(이하 경로 삼각형)와 소스 음향 레이로 찾은 충돌 삼각형 정보(이하 반향 삼각형)를 이용할 수 있다. 유효한 반향(reverberation) 정보를 계산하기 위해서는 경로 삼각형과 반향 삼각형의 ID를 비교하여 동일한 ID에 대한 삼각형 정보만 사용해야 한다. 반향 시간 계산에 필요한 정보는 유효한 영역의 넓이와 부피에 해당할 수 있다. SetupProcessing 단계로 전달되는 음향 레이 생성정보는 경로 테스트 레이, 소스 가시성 테스트 반사 레이(source visibility test reflection ray), 널(null) 레이에 해당할 수 있다.
PathReverbIRCalc 단계는 PPV&RGC 단계로부터 전달받은 충돌 응답 생성정보를 이용하여 경로/반향 사운드 렌더링 정보 데이터(path/reverb sound rendering information data)를 생성할 수 있다. 경로 사운드 렌더링 정보(Path sound rendering information)는 음향 경로의 지연 시간(delay time), 소리의 감쇠율 등을 포함할 수 있다. 반향 사운드 렌더링 정보(Reverb sound rendering information)는 소리의 감쇠율, 피드백 게인(feedback gain) 등을 포함할 수 있다. 계산된 렌더링 정보는 SPOutBuffer로 전달되어 외부 메모리(external memory)로 전달될 수 있다.
도 6은 도 3에 있는 셋업 처리부에서 수행되는 사운드 전파 모드의 상태전이 과정을 설명하는 도면이다.
도 6을 참조하면, 사운드 전파 모드는 직접투과(direct/transmission) 모드, 반사회절(propagation path) 모드, 반향(reverb) 모드, 공간 적응형 깊이 제어(adaptive depth control) 모드 등 4가지 모드로 동작할 수 있다. 일 실시예에서, 사운드 전파 모드의 상태전이는 셋업 처리부(310)에 의해 수행될 수 있다. DirectTrans 모드는 소리의 투과 여부를 테스트하기 위한 모드로써, 청취자와 사운드 소스 간의 직선 음향 레이를 생성하여 테스트를 진행할 수 있다. Propagation Path 모드는 초기 반사 음향 경로(early reflection sound path)를 찾을 수 있다. 초기 반사 음향 경로는 반사 음향 경로(reflection sound path)와 회절 음향 경로(diffraction sound path) 등을 포함할 수 있다.
Reverb 모드는 후기 반향 음향(late reverberation sound)을 생성하기 위한 정보를 찾을 수 있다. 이를 위해, 일반적으로 사용되는 RT60(음량이 60 db 아래로 떨어지는 시간)으로 데시벨이 떨어지는 반향 시간을 계산할 수 있다. Adaptive Depth Control 모드는 이전 프레임들의 깊이(depth)별 평균 유효 프레임 수를 이용하여 깊이를 조절할 수 있다. Adaptive Depth Control 모드는 이를 통해 음향 레이의 수를 줄임으로써 사운드 전파의 계산량을 줄일 수 있다.
도 7은 도 3에 있는 셋업 처리부에서 수행되는 공간 적응형 깊이 제어 과정을 설명하는 도면이다.
도 7을 참조하면, 셋업 처리부(310)는 공간 적응형 깊이 제어(ADC) 모드가 활성화된 경우 공간 적응형 깊이 제어를 수행할 수 있다. 셋업 처리부(310)는 ADC 모드가 활성화되어 있는지 여부를 확인할 수 있고, 만약 ADC 모드의 활성화가 확인된 경우 다음 단계로 진행하고 그렇지 않은 경우 공간 적응형 깊이 제어를 종료할 수 있다.
셋업 처리부(310)는 ADC 모드가 활성화된 경우 ADC 초기화(Initalization) 단계로 진입할 수 있다. ADC 초기화 단계는 이전 프레임들의 정보를 가져올 수 있고 ADC에 필요한 정보들을 초기화할 수 있다. 셋업 처리부(310)는 유효 프레임 검출(Check valid frame) 단계를 통해 이전 프레임의 정보를 기초로 깊이(depth) 별로 유효한 프레임이 존재하는지 여부를 검사할 수 있다. 셋업 처리부(310)는 버퍼링(Buffering) 단계를 통해 유효 프레임 검출 단계에서 구한 정보들을 저장할 수 있다. 만약 현재까지 ADC를 지나간 프레임 수가 ADC를 위한 최대 프레임 수(MAX_FRAME)랑 같아진다면 셋업 처리부(310)는 버퍼에 저장된 정보를 가지고 다음 단계로 진입할 수 있다. 만약 MAX_FRAME에 도달하지 못했다면 셋업 처리부(310)는 다른 계산 없이 ADC 모드를 종료할 수 있다.
ADC를 지나간 프레임 수가 MAX_FRAME에 도달했다면 셋업 처리부(310)는 평균 유효 프레임 산출(Calculate average valid frame) 단계를 통해 버퍼링 단계에서 저장했던 정보를 이용하여 깊이 별로 평균을 구할 수 있고 그 값이 한계값(0.5) 보다 큰 경우 해당 프레임에 대해 해당 깊이가 유효한 것으로 결정할 수 있다. 여기에서, 평균 유효 프레임 산출 단계는 맥스 프레임 수만큼의 프레임들에 대해 각 깊이마다 유효 프레임 수에 관한 평균을 산출하여 깊이별 평균 유효 프레임 수를 도출할 수 있다. 셋업 처리부(310)는 최대 깊이 산출(Evaluate max depth) 단계를 통해 내림차순으로 깊이를 검사하면서 해당 깊이의 유효 여부를 체크할 수 있고 최초로 유효한 것으로 결정된 깊이를 최대 깊이(max depth)로서 설정할 수 있다.
일 실시예에서, 셋업 처리부(310)는 이전 프레임 정보를 기초로 깊이별 유효 경로의 존재 유무를 기초로 유효 프레임을 검출할 수 있다. 보다 구체적으로, 셋업 처리부(310)는 이전 프레임에서 각 깊이 별로 청취자와 사운드 소스 사이에 유효한 경로가 존재하였는지 여부를 검출할 수 있다. 예를 들어, 특정 개수만큼의 음향 레이를 슈팅하여 청취자로부터 사운드 소스까지 도달 가능한 경로가 존재하는지를 기초로 유효 경로 존재 여부를 검출할 수 있다.
일 실시예에서, 셋업 처리부(310)는 버퍼에 저장된 프레임 수가 맥스 프레임 수보다 작은 경우 해당 프레임에 대한 공간 적응형 깊이 제어를 종료할 수 있다. 여기에서, 맥스 프레임 수(MAX_FRAME)는 ADC 모드의 수행 대상이 되는 프레임 수에 해당할 수 있고, 셋업 처리부(310)는 맥스 프레임 수만큼의 프레임들을 대상으로 공간 적응형 깊이 제어를 수행할 때까지 ADC 모드를 반복적으로 수행할 수 있다. 예를 들어, ADC 모드의 활성화 주기가 30 프레임인 경우 사운드 트레이싱 장치(300)는 맥스 프레임 수를 5로 설정할 수 있고 셋업 처리부(310)는 30 프레임 중 초기 5 프레임 만을 대상으로 공간 적응형 깊이 제어를 수행하여 최대 깊이를 설정할 수 있고, 이후 나머지 25 프레임에 대해서는 공간 적응형 깊이 제어를 통해 설정된 최대 깊이를 기초로 사운드 전파를 수행할 수 있다.
일 실시예에서, 셋업 처리부(310)는 내림차순으로 깊이별 평균 유효 프레임 수를 검사하여 깊이별 평균 유효 프레임 수가 기준 임계값과 보다 큰 경우 해당 깊이를 최대 깊이로서 결정할 수 있다. 평균 유효 프레임 산출 단계를 통해 깊이별 평균 유효 프레임 수가 산출된 경우 깊이가 높아질수록 평균 유효 프레임 수도 높아지는 점을 고려하여 셋업 처리부(310)는 가장 큰 높이부터 내림차순으로 평균 유효 프레임 수를 검사할 수 있다. 즉, 평균 유효 프레임 수가 기준 임계값보다 큰 경우 해당 깊이보다 작은 깊이들에 관한 평균 유효 프레임 수는 모두 기준 임계값보다 클 수 있다. 기준 임계값은 최대 깊이 산출을 위한 기준값에 해당할 수 있고, 사운드 트레이싱 장치(300)에 의해 사전에 설정될 수 있다.
도 8은 본 발명의 일 실시예에 따른 사운드 트레이싱 장치에서 수행된 ADC에 따른 깊이별 음향 레이 수 및 프레임 시간을 설명하는 도면이다.
도 8의 그림 (a)에서, 깊이 조절 유무 및 환경에 따른 음향 레이 수의 비교 결과를 확인할 수 있다. 청취자의 위치는 그대로 두고 음원의 위치를 실내(Inside) 혹은 실외(Outside)로 이동시켜 각각 측정한 결과에 해당할 수 있다. ADC를 적용하지 않은 2 행과 4 행의 결과는 청취자의 위치를 이동시키지 않았기 때문에 동일한 반면, 공간 적응형 깊이 제어를 통해 최대 깊이를 조절한 결과는 음원이 실내인 경우 depth2의 음향 레이 수는 약 44.67%, depth3의 음향 레이 수는 36.12%만큼 줄어든 것을 확인할 수 있다. 음원이 실외인 경우 음향 레이 수는 depth2에서 약 78.55%, depth3에서 약 77.83% 줄어든 것을 확인할 수 있다. 즉, 깊이를 조절함으로써 많은 음향 레이의 수를 줄일 수 있는 것을 확인할 수 있다.
도 8의 그림 (b)에서, 깊이 조절 유무와 환경에 따른 프레임 시간(frame time)의 비교 결과를 확인할 수 있다. 프레임 시간은 100 프레임 기준으로 사운드 전파를 수행한 시간을 의미할 수 있다. 3행과 5행은 깊이를 조절했을 때 프레임 시간에 해당할 수 있다. 깊이를 조절한 후 프레임 시간은 깊이 조절하기 전과 비교하면 음원이 실내인 경우에는 약 4.48% 감소할 수 있고 음원이 실외인 경우에는 약 7.85% 감소할 수 있다.
도 9는 본 발명의 일 실시예에 따른 사운드 트레이싱 장치에서 수행된 ADC에 따른 사운드 전파 단계별 감소율을 설명하는 도면이다.
도 9를 참조하면, 깊이 조절에 따른 사운드 전파(Sound propagation) 단계별 성능 감소율을 확인할 수 있다. 테스트는 Bootcamp(Source Inside & Outside) 환경을 사용하였고, 100 프레임 사운드 렌더링을 실행한 결과로서 깊이를 조절했을 때 및 조절하지 않았을 때의 각 단계별 실행 시간을 확인할 수 있다. 테스트 결과 Source Outside에 해당하는 그림 (a)의 경우 SetupProcessing는 29.03%, RayGeneration 는 42.21%, T&I 은 47.40%, HitPointCalc는 89.85%, PPV&RGC는 5.59%, PathReverbIRCalc는 45.11%, SPOutBuffer는 45.35% 성능의 차이를 확인할 수 있다. Source Inside에 해당하는 그림 (b)의 경우 SetupProcessing이 13.43%, RayGeneration이 24.20%, HitPointCalc는 20.47%, PPV&RGC는 0.80%, PathReverbIRCalc는 18.38%의 성능 차이를 확인할 수 있다.
상기 도 8 및 9의 테스트는 복합적인 공간을 가진 환경인 Bootcamp 환경에서 수행될 수 있고, 처음 최대 깊이는 3으로, MAX_FRAME은 5로 설정될 수 있다. 또한, 최소 깊이 값은 1로 설정하고 테스트를 수행할 수 있다. ADC로 일단 조절된 최대 깊이 값은 ADC를 구했던 시간을 포함해서 1초 동안 유지될 수 있고, 1초 = 30 프레임을 기준으로 설정되어 조절된 최대 깊이 값은 다음 25개의 프레임에 적용될 수 있다. 테스트 환경은 Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz, RAM 16GB, Window 10에서 수행될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
300: 사운드 트레이싱 장치
310: 셋업 처리부 320: 음향 레이 생성부
330: 횡단 교차 테스트부 340: 충돌 지점 처리부
350: 음향 레이 처리부 360: 사운드 렌더링부
370: 제어부

Claims (14)

  1. 가시성 테스트 레이 정보와 사운드 전파 레이 정보에 관해 공간 적응형 깊이 제어를 수행하여 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보를 생성하는 셋업 처리부;
    상기 가시성 테스트 적응 레이 정보 또는 상기 사운드 전파 적응 레이 정보를 기초로 해당 음향 레이를 생성하는 음향 레이 생성부; 및
    상기 해당 음향 레이와 충돌되는 기하 구조에 관한 정보를 수신하고 상기 해당 음향 레이의 특성에 따라 전파 음향 경로 테스트 또는 반향 기하 수집을 진행할지 여부를 결정하며 상기 셋업 처리부에 상기 사운드 전파 레이 정보를 제공하는 음향 레이 처리부를 포함하되,
    상기 셋업 처리부는 이전 프레임 정보를 수신하고 ADC 변수들을 초기화하는 단계, 상기 이전 프레임 정보를 기초로 깊이별 유효 프레임을 검출하여 버퍼에 저장하는 단계, 상기 버퍼에 저장된 프레임 수가 맥스 프레임 수와 같은 경우 상기 버퍼에 저장된 프레임을 기초로 깊이별 평균 유효 프레임 수를 산출하는 단계 및 상기 깊이별 평균 유효 프레임 수를 기초로 최대 깊이를 결정하는 단계로 구성된 상기 공간 적응형 깊이 제어를 수행하는 것을 특징으로 하는 사운드 트레이싱 장치.
  2. 제1항에 있어서,
    가속 구조(AS, Acceleration Structure)에서 상기 해당 음향 레이와 충돌되는 기하 구조의 존재 여부를 검출하는 횡단 교차 테스트부를 더 포함하는 것을 특징으로 하는 사운드 트레이싱 장치.
  3. 제2항에 있어서,
    상기 기하 구조가 존재하면 상기 기하 구조에 관한 정보를 생성하여 상기 음향 레이 처리부에 제공하는 충돌 지점 처리부를 더 포함하는 것을 특징으로 하는 사운드 트레이싱 장치.
  4. 제1항에 있어서, 상기 음향 레이 처리부는
    상기 전파 음향 경로 테스트를 통해 직접 음향 경로, 투과 음향 경로, 반사 음향 경로 및 회절 음향 경로를 검색하거나 또는 상기 반향 기하 수집을 통해 상기 기하 구조에 관한 반향 시간을 산출하여, 충돌응답 정보를 생성하는 것을 특징으로 하는 사운드 트레이싱 장치.
  5. 제4항에 있어서,
    상기 충돌응답 정보를 기초로 사운드 렌더링을 수행하는 사운드 렌더링부를 더 포함하는 사운드 트레이싱 장치.
  6. 제1항에 있어서, 상기 셋업 처리부는
    사운드 전파 모드로서 직접투과 모드, 반사회절 모드, 잔향 모드 및 공간 적응형 깊이 제어 모드 간의 순차적 활성화를 제어하는 것을 특징으로 하는 사운드 트레이싱 장치.
  7. 제6항에 있어서, 상기 셋업 처리부는
    상기 공간 적응형 깊이 제어 모드가 활성화된 경우에만 상기 공간 적응형 깊이 제어를 수행하는 것을 특징으로 하는 사운드 트레이싱 장치.
  8. 제6항에 있어서, 상기 셋업 처리부는
    상기 공간 적응형 깊이 제어 모드의 활성화를 특정 프레임 간격마다 주기적으로 제어하는 것을 특징으로 하는 사운드 트레이싱 장치.
  9. 삭제
  10. 제1항에 있어서, 상기 셋업 처리부는
    상기 이전 프레임 정보를 기초로 깊이별 유효 경로의 존재 유무를 기초로 상기 유효 프레임을 검출하는 것을 특징으로 하는 사운드 트레이싱 장치.
  11. 제1항에 있어서, 상기 셋업 처리부는
    상기 버퍼에 저장된 프레임 수가 맥스 프레임 수보다 작은 경우 해당 프레임에 대한 공간 적응형 깊이 제어를 종료하는 것을 특징으로 하는 사운드 트레이싱 장치.
  12. 제1항에 있어서, 상기 셋업 처리부는
    내림차순으로 상기 깊이별 평균 유효 프레임 수를 검사하여 상기 깊이별 평균 유효 프레임 수가 기준 임계값과 보다 큰 경우 해당 깊이를 상기 최대 깊이로서 결정하는 것을 특징으로 하는 사운드 트레이싱 장치.
  13. 제1항에 있어서, 상기 음향 레이 처리부는
    상기 해당 음향 레이의 특성에 따라 상기 최대 깊이를 적용하여 상기 전파 음향 경로 테스트를 수행하는 것을 특징으로 하는 사운드 트레이싱 장치.
  14. 사운드 트레이싱 장치에서 수행되는 사운드 트레이싱 방법에 있어서,
    가시성 테스트 레이 정보와 사운드 전파 레이 정보에 관해 공간 적응형 깊이 제어를 수행하여 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보를 생성하는 단계;
    상기 가시성 테스트 적응 레이 정보 또는 상기 사운드 전파 적응 레이 정보를 기초로 해당 음향 레이를 생성하는 단계;
    가속 구조(AS, Acceleration Structure)에서 상기 해당 음향 레이와 충돌되는 기하 구조의 존재 여부를 검출하는 단계;
    상기 기하 구조가 존재하면 상기 기하 구조에 관한 정보를 생성하는 제공하는 단계;
    상기 해당 음향 레이와 충돌되는 기하 구조에 관한 정보를 수신하고 상기 해당 음향 레이의 특성에 따라 전파 음향 경로 테스트 또는 반향 기하 수집을 진행할지 여부를 결정하여 충돌응답 정보를 생성하는 단계; 및
    상기 충돌응답 정보를 기초로 사운드 렌더링을 수행하는 단계를 포함하되,
    상기 가시성 테스트 적응 레이 정보와 사운드 전파 적응 레이 정보를 생성하는 단계는 이전 프레임 정보를 수신하고 ADC 변수들을 초기화하는 단계, 상기 이전 프레임 정보를 기초로 깊이별 유효 프레임을 검출하여 버퍼에 저장하는 단계, 상기 버퍼에 저장된 프레임 수가 맥스 프레임 수와 같은 경우 상기 버퍼에 저장된 프레임을 기초로 깊이별 평균 유효 프레임 수를 산출하는 단계 및 상기 깊이별 평균 유효 프레임 수를 기초로 최대 깊이를 결정하는 단계로 구성된 상기 공간 적응형 깊이 제어를 수행하는 단계를 포함하는 것을 특징으로 하는 사운드 트레이싱 방법.
KR1020180165454A 2018-12-19 2018-12-19 사운드 트레이싱 장치 및 방법 KR102019179B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180165454A KR102019179B1 (ko) 2018-12-19 2018-12-19 사운드 트레이싱 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180165454A KR102019179B1 (ko) 2018-12-19 2018-12-19 사운드 트레이싱 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102019179B1 true KR102019179B1 (ko) 2019-09-09

Family

ID=67951541

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180165454A KR102019179B1 (ko) 2018-12-19 2018-12-19 사운드 트레이싱 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102019179B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230094002A (ko) * 2021-12-20 2023-06-27 주식회사 세종피아 사운드 트레이싱의 회절을 위한 에지 검출 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150378019A1 (en) * 2014-06-27 2015-12-31 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for modeling interactive diffuse reflections and higher-order diffraction in virtual environment scenes
KR20160121778A (ko) * 2015-04-10 2016-10-20 세종대학교산학협력단 컴퓨터 실행 가능한 사운드 트레이싱 방법, 이를 수행하는 사운드 트레이싱 장치 및 이를 저장하는 기록매체
KR101676634B1 (ko) 2012-08-31 2016-11-16 돌비 레버러토리즈 라이쎈싱 코오포레이션 오브젝트―기반 오디오를 위한 반사된 사운드 렌더링

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101676634B1 (ko) 2012-08-31 2016-11-16 돌비 레버러토리즈 라이쎈싱 코오포레이션 오브젝트―기반 오디오를 위한 반사된 사운드 렌더링
US20150378019A1 (en) * 2014-06-27 2015-12-31 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for modeling interactive diffuse reflections and higher-order diffraction in virtual environment scenes
KR20160121778A (ko) * 2015-04-10 2016-10-20 세종대학교산학협력단 컴퓨터 실행 가능한 사운드 트레이싱 방법, 이를 수행하는 사운드 트레이싱 장치 및 이를 저장하는 기록매체

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230094002A (ko) * 2021-12-20 2023-06-27 주식회사 세종피아 사운드 트레이싱의 회절을 위한 에지 검출 방법 및 장치
WO2023120902A1 (ko) * 2021-12-20 2023-06-29 세종대학교산학협력단 사운드 트레이싱의 회절을 위한 에지 검출 방법 및 장치
KR102620729B1 (ko) * 2021-12-20 2024-01-05 엑사리온 주식회사 사운드 트레이싱의 회절을 위한 에지 검출 방법 및 장치

Similar Documents

Publication Publication Date Title
KR102074069B1 (ko) 룸에 대한 오디오 적응
EP0593228B1 (en) Sound environment simulator and a method of analyzing a sound space
KR100899836B1 (ko) 실내 충격응답 모델링 방법 및 장치
CN102893175A (zh) 使用声音信号的距离估计
CN108379842B (zh) 游戏音频处理方法、装置、电子设备及存储介质
KR20200088119A (ko) 회절 인지를 통한 비가시선 음원 위치 추적 방법 및 시스템
CN105794226A (zh) 用于声学回声消除的房间脉冲响应估计
KR102019179B1 (ko) 사운드 트레이싱 장치 및 방법
US11924626B2 (en) Sound tracing apparatus and method
KR101790137B1 (ko) 컴퓨터 실행 가능한 사운드 트레이싱 방법, 이를 수행하는 사운드 트레이싱 장치 및 이를 저장하는 기록매체
KR100928249B1 (ko) 3차원 음향공간내의 가상위치에 하나 이상의 음원을존재하게 하는 모의 실험 방법 및 장치
EP2208369B1 (en) Sound projector set-up
KR101955552B1 (ko) 사운드 트레이싱 코어 및 이를 포함하는 사운드 트레이싱 시스템
JP3152818B2 (ja) 音環境疑似体験装置及び音環境解析方法
EP4072163A1 (en) Audio apparatus and method therefor
KR102620729B1 (ko) 사운드 트레이싱의 회절을 위한 에지 검출 방법 및 장치
KR102226120B1 (ko) 다중 코어 사운드 트레이싱 장치 및 방법
KR102494851B1 (ko) 사운드 전파 성능 향상을 위한 사운드 트레이싱 방법
US11830471B1 (en) Surface augmented ray-based acoustic modeling
KR20220125964A (ko) 사운드 전파 성능 향상을 위한 사운드 트레이싱 장치
KR101885887B1 (ko) 사운드 트레이싱 장치, 방법 및 기록매체
KR102610263B1 (ko) 장애물을 고려한 객체 기반의 오디오 신호의 렌더링 방법 및 장치
KR20230109430A (ko) 음선 추적을 이용한 임펄스 응답 생성 방법 및 임펄스 응답 생성 장치
US11631393B1 (en) Ray tracing for shared reverberation
Kapralos et al. Sonel mapping: a probabilistic acoustical modeling method

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant