DOI QR코드

DOI QR Code

객체기반의 시공간 단서와 이들의 동적결합 된돌출맵에 의한 상향식 인공시각주의 시스템

A New Covert Visual Attention System by Object-based Spatiotemporal Cues and Their Dynamic Fusioned Saliency Map

  • Cheoi, Kyungjoo (Dept. of Computer Science, Chungbuk National University)
  • 투고 : 2015.01.11
  • 심사 : 2015.04.06
  • 발행 : 2015.04.30

초록

Most of previous visual attention system finds attention regions based on saliency map which is combined by multiple extracted features. The differences of these systems are in the methods of feature extraction and combination. This paper presents a new system which has an improvement in feature extraction method of color and motion, and in weight decision method of spatial and temporal features. Our system dynamically extracts one color which has the strongest response among two opponent colors, and detects the moving objects not moving pixels. As a combination method of spatial and temporal feature, the proposed system sets the weight dynamically by each features' relative activities. Comparative results show that our suggested feature extraction and integration method improved the detection rate of attention region.

키워드

1. 서 론

생물학적 연구 결과를 보면 사람은 모든 시각장면을 병렬적으로 처리한다기보다 우선적인 처리를 위한 부분을 순간적으로 포착하여 그 부분부터 순차적으로 처리해 나가는 전략을 사용한다[1]. 이처럼 시각체계의 모든 시각정보 중 일부를 선택하거나 여과함으로써, 주의를 특정 영역이나 물체에 집중시켜 시각정보의 처리능력을 극대화하는 작용을 시각주의(visual attention)라 하고 이에 대한 연구들이 진행되고 있다. 시각주의는 입력되는 시각장면 속에서 현작업과 가장 “관련있는” 부분을 안구의 움직임을 통해 저해상도의 주변 부위에 있던 부분을 고해상도의 중심와(fovea)로 옮기는 시각주의 기능(overt visual attention)과, 안구운동이 없는 상태에서 일어나는 시각주의 기능(covert visual attention)이 있으며 이는 서로 매우 밀접한 관계를 가지고 있다[2]. 본 논문에서는 안구운동이 없는 상태에서의 시각주의를 다룬다.

시각주의는 주의를 일으키는 것에 따라 공간주의와 시간주의로 구분하는데, 영상을 볼 때 관찰자의 주의를 일으키는 것이 영상 안에 있는 물체의 색상, 밝기, 방위, 깊이 등과 같은 것일 경우 공간주의(Spatial attention)라 하며 주의를 일으키는 것이 영상의 어떤 움직임일 경우에는 시간주의(Temporal attention)라 한다. 공간주의와 시간주의에 대하여 주의의 강도를 맵으로 나타낸 것을 각각 공간돌출맵, 시간돌출맵이라 한다. 다시 말하면, 공간 돌출맵 (Spatial saliency map)은 정지된 하나의 영상으로부터 색상, 밝기, 방향 등의 공간특성을 분석하여 공간 주의를 계산하고 이를 2D이미지 형태로 구축한 것을 말하고, 시간 돌출맵(Temporal saliency map)은 연속된 영상으로부터 물체의 움직임을 분석하여 시간 주의를 계산하고 이를 2D이미지 형태로 구축한 것을 말한다. 이렇게 구축된 돌출맵에서 값이 높은 지역은 영상에서 주의가 높은 지역이며 시각주의 탐색은 돌출맵에서 값이 높은 부분부터 순차적으로 탐색한다. 이러한 시각주의는 시각정보를 사용하는 대부분의 비젼 시스템 문제에 응용되어 사용될 수 있다. 일례로, 로봇의 비젼 시스템에서 로봇은 일정한 작업을 수행하기 위해서 최적의 환경이 조성되어야 하는데 이 주변 환경은 센서를 통해 입력된 정보를 통하여 인식한다. 이 센서는 레이저 등과 같은 거리 측정 센서가 이용되기도 하지만 실내의 평평한 벽이나 일정한 물체가 아니고 실외로 나가게 되면 다양하고 돌출된 평면에 대한 인식의 한계가 존재한다. 이 때문에 더 상위의 센서인 비전 센서가 필요하게 되었는데 비전 센서는 사람의 눈과 비슷하기 때문에 물체 인식이나 거리 측정까지 할 수 있어 빛이나, 움직이는 배경, 변하는 시점의 일치들과 같이 기존의 센서를 사용한 인식과정에 장애가 되던 요소들을 극복할 수 있고 기존의 센서보다 얻는 정보가 많고 활용 범위가 넓다. 하지만 이 많은 정보 중에 작업의 효율을 올리기 위해서는 유용한 정보를 먼저 획득하여야 하는데 이를 위해 시각주의가 필요하다.

본 논문에서는 이러한 시각주의를 구현한, 기존의 시공간 정보를 특징으로 하는 시각주의 탐색 시스템이 가지고 있는 여러 한계점들을 보완하여 시스템을 통해 탐색된 영역이 인간의 시각 탐색 전략과 보다 더 유사하게 부합되는 상향식 시각주의(bottom-up visual attention) 탐색 시스템을 제안한다. 여기서 상향식 시각주의란 색상과 모양 움직임 같이 신경자극을 통하여 무의식적으로 사람의 주의가 가는 부분을 우선 찾는 방법을 말하고, 하향식 시각주의(top-down visual attention)란 찾고자 하는 물체의 우선순위가 머릿속에서 먼저 인지되어 있어 이 순서대로 물체를 찾는 방법을 말한다[2]. 하향식 시각주의는 적응적 학습이 우선되어야 하며, 특정 애플리케이션에 국한되기 때문에 본 연구는 상향식 시각주의에 기초하여 연구되었다. 상향식 시각주의 연구는 이미 기술한 바와 같이 입력되는 시각장면의 특징을 추출하고 분석하여 돌출맵으로 구성한 후 이를 기반으로 시각주의를 탐색하며[2], 제안하는 시스템도 이 기본 틀을 같이 한다. 다음 2장에서 시각주의 탐색에 관련된, 제안하는 시스템과 기본 틀을 같이 하는 기존의 연구들에 대해 설명하고, 3장에서 제안하는 시스템을 설명한다. 이어 4장에서 실험 및 결과를 분석하며 5장에서 결론을 맺는다.

 

2. 관련 연구

정지된 영상의 시각주의 탐색은 오랜 시간동안 연구되었다. 심리학자들이 연구한 바에 따르면 인간의 시각 시스템은 목표가 되는 지역과 주변의 차이에 민감하고 이 차이로 물체를 구분해낸다고 하였다. 이러한 연구를 통하여 많은 사람들이 사람의 시신경에 기반한 특징들을 찾는데 연구의 초점을 맞추었다. Itti의 연구에서는 돌출맵과 승자전취망(Winner-Take All Network)으로 이루어진 모형을 제안하였는데[1], 이 모형에서는 영상을 입력받으면, 입력받은 영상으로부터 영상 피라미드를 만든 뒤 이 영상파라미드에 대하여 색상, 밝기, 방향 특징을 추출한 특징맵을 생성하고, 생성된 색상, 밝기, 방향 특징맵에 대하여 중심-주변연산자를 수행한 후 각각의 영상피라미드를 결합하여 색상, 밝기, 방향에 대한 두드러짐 맵을 생성한 후, 생성된 두드러짐 맵 3개를 선형 결합을 하여 돌출맵을 생성한다. 이 모형은 영상 피라미드를 사용함으로써 다양한 해상도에 대한 정보를 가질 수 있지만, 주의 영역 탐색에 승자독식모델을 사용하여 비슷한 값이라도 경쟁에서 밀리면 탐색되지 않는다는 단점이 있다. Cheoi의 연구에서는 8가지 방위의 DOOrG(Difference of Oriented Gaussian)와 비선형결합 방식을 형태 및 방위 특징추출에 사용하였는데[2], 형태 및 방위 특징 추출에서 8가지 방위 중 활동량이 높은 하나의 특징맵이 생성되며 색상, 밝기 특징들에 관하여 각각의 특징 중 가장 활동량이 높은 맵 하나만 최종적으로 선택한다. 색상/밝기 특징맵을 생성할 때에는 0이하의 값은 0으로 계산하여 생성하는데, 이 때문에 영상에 존재하는 녹색과 황색은 탐색이 되지 않는 단점이 있었다. 또한 색상/밝기 형태-방위 특징맵을 생성할 때에는 색상/밝기 특징맵에 대하여 8가지 방향의 형태-방위 특징을 추출한 후 가장 활동량이 높은 맵을 하나씩 선택하여 생성하고, 돌출맵을 생성할 때에도 색상/밝기 형태-방위 특징맵 중 활동량이 가장 높은 맵 하나만을 선택한다. 이 모형에서는 현저도가 높은 한 부분을 잘 찾아내지만 색상 특징맵에서 0이하 값을 고려하지 않아 색상의 손실이 있고, 돌출맵을 생성할 때 활동량 높은 맵 하나만을 선택하여 나머지 특징 정보가 손실되는 한계점이 있다.

이외에 몇몇의 연구자들은 공간 주의를 비디오 순서들의 움직임에 중요한 규칙을 두어 확장시킨 연구를 진행하였다. Zhai는 시간돌출맵을 형성함에 있어 Lowe의 SIFT(Scale Invariant Feature Transform) 와 RANSAC(RANdom SAmple Consensus) 알고리즘을 사용하였다[3]. SIFT를 사용하여 두 영상에서의 흥미점을 추출하고 두 영상 사이에 일치하는 점 (point)들을 찾은 다음, 찾아낸 점들을 RANSAC 알고리즘을 사용하여 최적화된 해를 찾고 이를 이용하여 시간돌출맵을 형성한다[3]. 시간돌출맵 생성할 때에는 움직임이 작더라도 화면에 넓게 존재하게 되면 움직임의 크기가 커져 눈에 띄게 된다. 하지만 이 연구에서는 움직임 영역의 크기가 고려되지 않아 시간 돌출맵에 주의가 높게 부여되지 않았고, 공간돌출맵을 생성할 때에는 특징이 높은 부분만 추출하여 주변의 정보가 사라지는 한계점이 있다. Siagian와 Dhavale의 연구는 Itti의 연구에 움직임 특징을 더하여 확장한 연구이다[5-6].

시공간 돌출맵에 영상의 깊이 정보를 더한 연구도 진행되었다. Hong의 연구에서는 시공간모델에 깊이 특징과 위치정보 필터를 추가하였고, 시간 돌출맵을 생성할 때 블록매칭알고리즘을 사용하였다[7]. 이 알고리즘은 일정 블록으로 영상을 나누어 블록안의 픽셀의 변화량을 계산하여 한계치 이상이면 움직임이 있다고 판단하는데, 블록 안의 픽셀의 변화량으로 계산하여 동일한 물체라도 여러 색상의 특징을 가지고있는 물체는 잘 찾아내지 못하고 블록이 고정된 크기로 되어 있어 다양한 크기의 물체에 대한 움직임을 알아내기 어렵다. 또한 블록 안의 변화된 픽셀 수로 움직임이 검출되기 때문에 이전 위치와 현재 위치두 부분으로 움직임이 검출이 되어 정확한 물체 움직임을 찾기에 적합하지 않다. 시공간 돌출맵을 생성할 때에는 시간돌출맵과 공간돌출맵, 깊이 정보에 고정된 가중치를 부여하여 생성하기 때문에 다양한 종류의 영상에 대하여 유연하게 대처하지 못하였다. Park [8]의 연구에서는 FSBM(Full Search Block Matching) 알고리즘을 사용하여 움직임 벡터를 추출하고 이를 이용하여 시간돌출맵을 생성하였다. 하지만 시간현저도 추출에 사용된 FSBM(Full Search Block Matching) 알고리즘은 블록을 매칭시킬 때 비슷한 값을 가진 블록 다른 물체의 움직임에서 검출될 수 있다는 한계점이 있으며 움직임 벡터만으로는 물체 크기에 유사한 움직임 검출은 어렵다. Cheoi[9]의 연구는 인간의 움직임 인지에 대한 연구결과를 이용하는 새로운 접근법을 사용하였고, 3차원 깊이정보를 사용하여 현저도맵의 정확도와 신뢰성을 향상시키기 위해 3차원 깊이정보를 활용하여 보상하였다. 3차원 깊이 정보를 사용함에도 불구하고 객체단위로 움직임을 탐지하지 못하여 주의 영역을 제대로 탐지하지 못한다.

정리하자면 기존의 상향식 기반 연구들은 공간현저도를 추출하는 기존의 시스템의 경우에는 특징이 크게 드러나는 한 맵만을 선택하여 다른 특징들은 손실되는 문제가 있었으며, 특징맵 간의 결합에 고정된 가중치를 두어 다양한 영상에 대하여 적응적이지 못한 한계가 있었다. 또한 색상 특징맵 생성시 R+/G-(적색 자극에 대해 흥분하고, 녹색 자극에 대해 억제)와 B+/Y-(청색 자극에 대해 흥분하고, 황색 자극에 대해 억제) 자극에 대한 색상 특징만 추출하여 녹색과 황색이 눈에 띄는 영상은 녹색과 황색이 적색과 청색에 밀려 탐색이 잘 되지 않았다. 또한 시간현저도를 추출하는 기존의 시스템의 경우에는 움직임 특징을 추출할 때 영상이 떨리게 되면 움직이는 물체를 잘 찾지 못하고, 움직이는 물체의 픽셀 단위로 움직임을 탐색하다보니 움직이는 물체의 크기에 적응적으로 움직임을 탐색하지 못하였다. 또한 공간돌출 맵과 시간돌출맵을 결합하여 하나의 시공간돌출맵을 만들 때 시간현저도가 드러난 영역의 크기는 고려되지 않고 시간돌출맵에 항상 우선순위를 배정하기 때문에다. 작은 움직임이라도 존재하면 이 움직임을 가장 우선으로 탐지하게 된다. 이에 본 논문에서는 이러한 한계점을 극복하는 시스템을 제안하고자 한다.

 

3. 제안하는 시스템

제안하는 시스템의 전체적인 흐름도는 Fig. 1과 같다. Fig. 1에서 보여지는 바와 같이 제안하는 시스템은 “공간현저도추출(Spatial saliency extraction) 모듈”, “시간현저도추출(Temporal saliency extraction) 모듈”, “동적 결합(Dynamic Fusion) 모듈” 의 3개의 모듈로 이루어져 있다. 시스템의 결과물인 시각주의경로(visual path)는 동적결합된 시공간돌출맵(Spatiotemporal saliency map)에서 찾을 수 있는데, 돌출맵의 명암도값이 높은 영역일수록 우선순위가 높은 시각주의영역이라 할 수 있다. 이렇게 시공간 특징을 추출하고, 결합을 하여 돌출맵을 만들고, 이를 기반으로 시각주의경로를 탐색하는 방법은 기존의 전형적인 상향식 시각주의 시스템에서 채택하고 있는 전반적인 흐름을 그대로 따르고 있다. 하지만 본 논문에서 제안하는 시스템과 기존의 시스템과의 차별점은 특징 추출 및 결합 방법에 있다. 제안하는 시스템에서는 공간 특징의 하나로서 색상특징을 추출할 때 상대적 색상특징을 추출하는데, 추출된 상대적 색상특징 중 하나의 색상특징만을 고정적으로 선택하던 기존의 시스템의 한계점을 극복하여 현저도가 높은 색상특징을 동적으로 선택할 수 있도록하고, 시간 특징인 움직임 특징을 추출함에 있어 물체 기반의 움직임 탐색을 수행하여 픽셀 변화에 의해 오탐색되는 움직임이나 미탐색되는 움직임이 없도록 하였다. 또한 추출된 다양한 시공간 특징맵을 특징맵 별 활동량에 따라 동적으로 가중치를 결정하고 이 가중치를 사용하여 결합함으로써 양쪽의 현저도를 모두 얻을 수 있도록 하였다.

Fig. 1.Overall Process of the system.

공간돌출맵은 색상정보를 뇌로 전달해주는 신경회로가 3가지의 추상체로 입력되는 정보를 ‘적-녹‘과 ’청-황‘의 반대쌍의 색상정보로 바꾸어 전달한다는 색상의 이중과정이론에 기반하여 추출한 색상특징과 명암도특징에 대해 DOOrG[2] 필터를 통해 형태/방위 특징을 추출하고, 이들을 동적 가중치 결합하여 생성한다. 또한 시간돌출맵은 SIFT로 추출한 흥미점으로 움직임 특징을 구하고, 이를 재구성하여 생성한다. 시공간돌출맵은 공간돌출맵과 시간돌출맵을 가중치 결합하는데, 이 때 부여되는 가중치는 서로 상대적인 값으로 시간돌출맵의 움직임 활동량과 움직임 영역의 크기를 고려하여 가중치를 결정한다. 기존의 대부분의 시스템에서는 시간특징이 중요하다 생각하여 시간특징에 대한 가중치를 공간특징보다 일률적으로 높게 결정하여 사용하였는데, 이는 올바르지 않다. 인간은 움직임이 큰 물체가 있을 경우에는 그곳에 우선 시선이 가지만, 움직임 아주 작은 물체의 경우에는 해당 물체보다는 공간특징이 큰 물체에 시선을 주기 때문이다.

3.1 ‘공간현저도추출’ 모듈

Fig. 2는 ‘공간현저도추출’ 모듈의 전반적인 흐름도를 나타낸다. 공간현저도추출 모듈은 다시 1) 색상 및 명암도특징 추출 2) 방위/형태 특징 추출 3) 동적 가중치 결합의 3가지 모듈로 나뉘어져 처리된다.

Fig. 2.Overall Process of‘Spatial Saliency Extraction’ module.

3.1.1 색상 및 명암도특징 추출(color/intensity feature extraction)

색상특징 추출 색상특징은 색상정보를 뇌로 전달해주는 신경회로가 3가지의 추상체로 입력되는 정보를 ‘적-녹‘과 ’청-황‘의 반대쌍의 색상정보로 바꾸어 전달한다는 이중과정이론에 기반하여 ’적-녹‘, ’청-황‘ 색상에 대한 상대적 색상 쌍(F01, F02,F03,F04)을 식(1)과 같이 생성한 후, R+/G-와 R-/G+, B+/Y-와 B-/Y+를 각각 비선형 결합하여 각각의 색이 두드러지는 특징맵 ’적-녹‘ 특징(F11)과 ’청-황‘ 특징(F12)을 생성한다.

비선형 결합 방법에 의해 적-녹 색상특징과 청-황 색상특징은 영상에서 각각에 고려되어진 색 중 활동량이 높은 색이 선택되어진다. Cheoi[2]의 시스템의 경우 0 이하 값을 0으로 하였는데 제안하는 시스템에서는 0이하의 값도 색상의 정보를 까지고 있다고 보고 이 정보도 얻기 위하여 0이하 값까지 고려하였다.

명암도특징 추출 인간의 눈으로 보는 명암도특징은 영상에서 밝은 부분에 현저도가 높은 수도 있고 반대로 어두운 부분에 현저도가 높을 수도 있기 때문에 밝은 부분이 높은 특징 값을 가지는 On 특징(F05)과, 어두운 부분이 높은 특징 값을 가지는 Off 특징 (F06)을 생성한다[2]. 명암도특징(F13)은 이 2개의 상대적 명암도특징을 비선형 결합하여 생성한다. 이렇게 추출된 명암도특징은 On과 Off밝기에서 더 두드러지는 활동량이 높은 밝기 정보로 구성되게 된다.

3.1.2 비선형결합

비선형결합은 입력된 여러 맵 중 활동량이 큰 맵을 부각시켜 해당 맵 위주로 결합하는 방법이다. 먼저, 입력되는 임의의 맵에 대하여 활동량을 계산하여 이를 기반으로 활동량이 낮은 특징맵은 낮은 가중치를, 활동량이 높은 맵에는 높은 가중치를 부여한다. 식 (2)가 비선형결합에서 가중치를 부여하는 방법인데 diff(F)가 입력 맵 F의 활동량을 뜻한다. 활동량은 입력 맵의 국부적인 영역에서의 최대값과 전역 최대값과의 차이를 구한 것으로, 이 값이 높을수록 입력 맵의 활동량이 높은 것이다. 제안하는 시스템에서는 입력 맵에서 가장 높은 최대값을 추출하고 이 값에서 입력 맵의 라인별 최대값의 평균의 최대값을 빼는 방법으로 식 (3)을 사용하여 활동량을 계산하였다. 이 방법은 입력 맵에 최대값과 유사한 값들이 많이 존재한다면 라인별 최대값의 평균 또한 커지기 때문에 활동량의 값이 작게 계산되며 반대의 경우에는 큰 값이 계산된다. Cheoi[2]의 연구에서는 국부적인 영역에서 최대값을 구할 때 y축 방향으로만 계산하였는데 본 연구에서는 x축과 y축 방향을 모두 고려하여 계산하였다. 또한 맵의 활동량 계산 시 블록의 크기를 지정해야 하는데 영상의 환경을 고려하지 않고 모든 영상에 일괄적인 크기의 블록을 적용하면 영상의 정보를 적응적으로 얻는데 한계가 있으므로 10에서 100까지 10씩 차이가 나도록 10단계의 라인 블록을 영상에 임의로 적용하였다. 단, 가로방향과 세로방향의 영역 정보를 동일하게 얻기 위하여 라인별 블록 수는 동일하게 적용하였다.

이렇게 가중치가 부여된 맵들 중 결합에 선택될 활동량이 큰 맵을 얻기 위하여 식 (4)과 같이 각각의 맵들의 최대값과 최소값의 범위를 동일하게 만들어 상대적인 활동량을 비교할 수 있게 한다. 이렇게 처리된 맵을 선형결합하면 입력된 맵 중 활동량이 상대적으로 가장 큰 맵이 선택되어 결합되게 된다.

3.1.3 방위/형태특징 추출(orientation/form feature extraction)

방위/형태특징을 추출하기 위하여 Marr [10]에 의해 연구된 형태특징을 추출하는 DoG 모형에 방위성을 부여한 DOORG[2] 모형을 사용한다. 제안하는 시스템에서는 윗단계에서 추출된 각각의 색상과 명암도특징마다 8방향의 방위에 조율된 DOORG 필터를 적용하여 8개의 방위/형태 특징맵을 만들고, 8개의 방위/형태 특징맵 F1k(θ) 중 활동량이 높은맵만을 선택하여 방위/형태 특징맵을 생성한다.

3.1.4 동적 가중치 결합(dynamic weighted combination)

공간돌출맵은 색상과 명암도특징맵을 가중치 결합하여 생성한다. 이 때 가중치는 입력되는 특징맵에 따라 동적으로 결정된다. 제안하는 가중치 특징 결합방법은 다음과 같다. 먼저, 각각의 색상/명암도특징별 방위/형태 특징맵에 식 (5)와 같은 방법으로 가중치를 계산하여 할당하고, 색상/명암도특징 별 방위/형태 특징맵에 이는 정보를 모두 얻도록 모든맵을 가중치 결합한다. 색상/명암도특징 별 방위/형태 특징맵에 가중치를 주어 값의 변화를 줄때, 입력되는 영상에 따라 가중치가 동적으로 바뀌게 되어 적응적인 돌출맵을 생성할 수 있고 이에 따라 활동량이 높은 맵의 시각주의경로를 탐지할 수 있다. 또한 공간 돌출맵을 생성하는데 있어 특징맵의 모든 정보를 취하게 함으로써 기존의 비선형결합방식을 채택했던 많은 시스템에서 나타났던 문제점인 현저도가 높은한 특징맵만을 선택되던 문제를 개선하였다.

3.2 ‘시간현저도추출’ 모듈

‘시간현저도추출’ 모듈에서는 단위시간동안 입력된 영상에서의 물체의 이동을 탐지하여 단위시간동안 발생한 시간주의를 찾는다. 시간주의에서 어느 한 물체의 이동이 다른 물체들 보다 크게 일어난다면 이 물체는 다른 물체보다 더 높은 현저도를 가진다. ‘시간현저도추출’ 모듈에서는 현재와 이전 영상에서 흥미점(Interesting point)들을 각각 추출하고 이를 이용하여 움직임 벡터를 생성한다. 그리고 생성된 움직임 벡터의 정보를 분석하여 시간돌출맵을 생성한다.

3.2.1 흥미점 추출

흥미점 추출은 인자값을 조율한 SIFT 알고리즘을 사용하며 현재영상 (t)와 이전영상 (t-1) 각각에 대하여 영상에 존재하는 물체들이 가지는 흥미를 끄는 양이 높은 지점인 흥미점(intersting point)을 추출한다(F041,F042). SIFT는 크기와 회전에 불변한 특징을 추출하는 방법으로, SIFT를 통해 추출된 흥미점은 (x,y) 좌표 값과 함께 좌표값 주변의 방향성 정보도 함께 가지고 있다. 이 흥미점은 대부분 물체의 경계선(edge)에서 나타나는데 본 연구에서는 SIFT의 인자를 수정함으로써 더 많은 특징점을 찾아내었다. SIFT 알고리즘에서는 입력된 영상을 일정한 옥타브 (octave)로 구성한 후, 각 옥타브의 크기를 바꾸어 다양한 해상도에서 특징을 추출할 수 있게 하는데 형성하고 각 옥타브마다 DoG(Difference of Gaussian) 연산을 수행하는데 본 연구에서는 DoG 영상의 개수 인자를 4개에서 15개로 늘렸고, 흥미점의 후보점을 찾을 때 불안정한 후보점을 버리는 문턱치 인자를 0으로 함으로써 모든 후보점을 버리지 않도록 하였다 또한, 기존의 경계선에 가까운 점만 후보점이되게 하던 것을 경계선에서 멀리 있는 점도 어느정도 후보점으로 되도록 경계선문턱치 인자를 100으로 조절하였다. 여기서 사용된 인자값들은 모두 실험적으로 사용한 수치이다. 흥미점은 단순하게 형태적 정보만을 가지고 있기 때문에 우리가 원하는 시간현저도를 추출하기 위해서는 데이터를 가공하는 다음 절에서 설명하는 두 단계를 더 거친다.

3.2.2 움직임 벡터 추출 및 분석

흥미점을 추출한 다음에는 추출한 흥미점을 기반으로 움직임 벡터를 생성하여 해당 점(point)이 어느 방향으로 얼마나 움직였는지를 계산한다. 이를 위하여 현재와 이전 영상에서 나온 F041과 F042의 흥미점최소 (x,y) 좌표를 구한 다음,에서 서로 일치하는 점을 SIFT 매칭으로 구한다. 이전영상 (t-1)의 흥미점과 일치하는 현재 영상 (t)의 흥미점은 같은 물체라고 판단되기 때문에 이 두 점들간 좌표값의 차이로 이동량(움직임 크기)과 방향을 구하는데(F04), 방향은 흥미점이 이동한 방향을 8개의 방향으로 구분하여 구한다.

3.2.3 시간돌출맵 생성

전 단계에서 생성한 F04는 움직임의 크기와 방향을 가지는데, 식 (6)을 사용하여 움직임이 있는 영역이 어떤 부분인지를 표현하여 시간돌출맵 St를 만든다.

region(F04(i))는 F04의 i번째 점과 동일한 움직임 양과 방향을 가지는 점들(lm)을 찾아 lm의 최대(x,y) 좌표와 최소(x,y) 좌표 사이 영역에 F04(i)의 거리(distance)값을 시간현저도값으로 부여한 것이다. 이렇게 F04즉에 시간현저도값을 부여한 것이 시간돌출맵 St이다. 시간돌출맵 St를 만드는 방법 정리하면, 먼저, 같은 움직임 크기와 방향을 가지는 움직임 벡터 쌍들의 집합을 구하고, 이 값들에서 최대 (x,y) 좌표와 최소 (x,y) 좌표를 구한 다음, 구한 최대, 최소 (x,y) 좌표로 사각형 영역을 그린다. 마지막으로 사각형 영역의 움직임 크기를 해당 영역의 시간현저도 값으로 부여한다. 만일 움직임 영역이 겹친다면 낮은 현저도 값이 높은 현저도 값으로 대체한다. 본 연구에서는 영역의 크기가 일정크기 이상일 경우 배경이 라고 생각하고 이를 제외하였고, 같은 움직임 영역의 크기가 1일 경우와 같은 움직임 갯수가 1일 경우에는 노이즈로 판단하여 제외하였다.

3.3 동적결합

사람이 주의를 느끼는 시간과 공간의 현저도를 결합하여 돌출맵을 만들어 사람의 시각 시스템에서 인지하는 것과 유사한 시스템을 생성하도록 하는데, 본 연구에서는 시간과 공간돌출맵의 결합은 사람은 공간적 특징보다 움직임에 더 민감하다는 사실과, 배경과 사람이 모두 움직일 경우에는 보통 배경보다 움직이는 사람에 대하여 더 주의를 가진다는 사실에 기인하여 가중치를 부여하여 결합하는 방법을 사용하였다. 그런데 일반적으로 우리는 움직임의 크기가 작을 때는 작은 움직임보다는 색상이나 밝기와 같은 공간 현저도에 더 많은 주의를 주게 된다. 따라서 이러한 사실을 바탕으로 시간 특징이 높으면 시간돌출맵에더 많은 가중치를 두고 반대의 경우에는 공간돌출맵에 더 많은 가중치를 주는 방법을 사용하였다. Zhai[3]의 연구에서는 시간돌출맵 가중치 값을 결정할 때 움직임이 있는 영역의 최대값에서 중간값을 뺀 수치로 결정하였는데 전체 화면에서 움직임영역의 크기나 최대값과 주변값과의 차이는 고려하지 않았다. 본 연구에서는 시간돌출맵 가중치 결정에 있어 움직임 영역의 자체 크기, 움직임 영역에 있어서의 주변 영역과의 크기 차이, 움직임 영역 안의 최대 움직임 크기 및 이를 제외한 주변영역과의 움직임 크기와의 차이 등을 함께 고려하였다. 시공간돌출맵(S)은 식 (7)을 통해 계산되어진다. 여기서 Kt가 시간돌출맵에 부여되는 가중치이며 공간돌출맵에 부여되는 가중치는 1-Kt로 계산된다. 시간돌출맵 가중치 Kt는 식 (8)과 같이 계산되어 영상 내에 움직임 영역이 많고, 주변 영역과 비교하여 움직임이 존재하는 영역에서 움직임의 크기가 큰 움직임이 많으면 많을수록 가중치가 높게 설정되도록 조정되었다. 공간돌출맵에 부여되는 가중치가 0이 되는 것을 막기 위하여 시간돌출맵 가중치 계산시 값들을 3으로 나누어 시간돌출맵에 부여되는 최고 가중치가 0.9가 되도록 한다. 이 식은 항상 0.1이 부족하기 때문에 공간돌출맵 값이 시공간돌출맵에서 손실되지 않는다.

 

4. 실험 및 결과

4.1 실험 영상 및 실험 방법

제안하는 시스템의 성능 평가를 위하여 다양한 환경을 가지는 영상을 실험영상으로 구성하였는데 실험에 사용된 영상은 제안하는 시스템에서 생성하는 시간돌출맵과 공간돌출맵의 특징에 적합한 여러가지 영상으로 구성하였다. 대부분 도로변에서 흔히 볼 수 있는 영상을 촬영하여 수집하였고, 추가로 기존의 연구에서 사용했던 영상도 비교실험을 위해 선택하였다. 비교실험을 위해서는 실행코드 및 실험영상이 공개되어 있는 Dhavale의 연구[6]에서 사용했던 영상을 선택하였다.

실험영상은 영상 내 공간특징 복잡도와 시간특징 복잡도에 따라 Table 1과 같이 수집하였다(Fig. 3 ~ Fig. 8 참조). 공간특징 복잡도는 영상이 아주 복잡한 배경을 가지고 있어서 영상에서 눈에 띄는 배경의 공간특징이 매우 다양할 경우 높음으로 구분하였고, 그렇지 않은 경우는 낮음으로 구분하였다. 일반적으로 영상배경이 단순하고 다시 말해 공간특징 복잡도가 낮은 경우에는 제안하는 방법으로 눈의 띄는 물체를 찾기가 매우 쉽기 때문에 실험은 공간특징이 복잡한 경우에 집중하였다. 이렇게 공간특징 복잡도에 따라 나뉜 영상은 다시 시간특징 복잡도에 따라 낮고 높음으로 나누었는데 시간특징 복잡도가 낮다는 것은 영상 내 움직이는 물체의 개수가 하나로 움직이는 물체를 쉽게 찾을 수 있는 영상이고, 복잡하다는 것은 다수의 물체가 움직이는 경우라서 여러 단계에 걸쳐 시선처리를 해야 하는 경우를 말한다. 이렇게 본 연구에서는 영상 내 움직이는 물체의 개수와 크기에 따라 영상을 구분하여 실험하였는데 움직이는 물체의 크기를 고려한 것은 해당 물체가 영상에서 어느정도 비중을 차지하여 움직임이 작더라도 눈에 띄는 경우와 반대로 영상에서 차지하는 비중이 작아 눈에 바로 뛰지 않는 경우를 고려하기 위함이다.

Table 1.Criteria for classification of test images

4.2 단계별 시스템 결과

Fig. 3은 개발된 시스템의 각 모듈별 결과이다. Fig. 3에서 사용한 실험영상은 동영상의 분류 중 공간 특징 복잡도가 높고 크기가 큰 물체의 움직임이 존재하는 영상으로, 영상의 왼쪽편에 보이는 흰 탑차가 우측에서 좌측으로 이동하고 있다. 영상에서 공간 특징으로 눈에 띄는 부분은 녹색 나무와 흰 하늘, 하늘색 지붕이고, 시간특징으로 눈에 띄는 부분은 흰 탑차이다. 이 실험영상에 대한 시스템 결과를 토대로 제안하는 시스템의 전반적인 동작 과정을 설명하고자 한다.

Fig. 3.Output of the each module of the system : (a) current frame image (b) previous frame image (c) R/G feature (d) B/Y feature (e) Intensity feature (f)~(h) orientation/form feature of (a),(b),(c) (i) motion feature (j) spatial saliency map (k) temporal saliency map (l) : spatiotemporal saliency map (m) visual path.

4.2.1 공간현저도 추출 결과

Fig. 3(c)는 입력 영상에서 R/G특징을 추출하고, Fig. 3(d)는 B/Y특징을, Fig. 3(e)는 명암도특징을 추출한다. 각각의 영상은 해당 특징이 높은 부분이 밝게 나타났는데 Fig. 3(c) 전체적으로 비슷한 밝기를 가지는데 하늘색 지붕에 더 높은 특징이 있다. Fig. 3(d)도 하늘색 지붕의 특징이 높게 나타났는데 지붕 부분에 B/Y특징이 높은 것을 알 수 있다. Fig. 3(e)의 명암도 특징은 비선형결합을 한 것인데 흰 하늘 부분이 높은 특징을 가지는 것으로 나타나는 것으로 보아 밝은 특징이 어두운 특징 보다 높았음을 알 수 있다. Fig. 3(f)~Fig. 3(h)는 각각 Fig. 3(c)~Fig. 3(e)에 대해 형태 및 방위 특징맵을 생성한 것이다. 8개 방위에 대한 형태 특징을 비선형 결합하여 통합하였기 때문에 8개의 형태-특징맵 중 활동량이 가장 높은 맵만 선택된다. Fig. 3(f)~Fig. 3(h)에서 방위에 대한 정보를 확인하기 힘들지만 형태를 취하고 있는 부분의 값이 더 뚜렷하게 나타나게 됨을 알 수 있다. Fig. 3(j)는 제안하는 시스템의 가중치 결합방법으로 생성한 공간돌출맵이다. 활동량이 가장 높은 명암도 특징맵에 높은 가중치가 부여되었고 다음으로 B/Y, R/G 특징맵 순으로 가중치가 부여되어 흰 하늘이 가장 높게 나오고 다음으로 하늘색 지붕이 높게 나왔다.

4.2.2 시간현저도 추출 결과

시간특징 추출에서는 움직임 특징에 대한 추출을하고 이정보를 분석하여 시간현저도를 구한다. Fig. 3(i)는 Fig. 3(a)와 Fig. 3(b)에서 물체의 형태 특징이 높은 부분을 추출하여 각각 일치하는 위치를 선으로 그린 것이다. 입력 영상 촬영 시 손 떨림이 어느 정도 존재하여 배경도 일치하는 점들이 그려졌지만 왼쪽 아래 흰 차량에서 뚜렷하게 움직임이 있는 부분을 찾아냄을 알 수 있다.

Fig. 3(k)는 Fig. 3(i)에서 찾아낸 일치점들을 분석하여 시간돌출맵을 그린 것이다. 넓은 부분의 움직임이 존재하면 배경이라 생각하여 제거하고 움직임이라고 볼 수 있는 부분만을 남겨두었다. Fig. 3(k)에서는 움직이고 있는 흰 탑차의 현저도를 움직이는 물체 크기에 유사하게 잘 찾아내었다.

4.2.3 시공간 현저도 추출 및 시선처리 결과

Fig. 3(1)은 제안하는 시공간 가중치 결합 방법으로 생성한 시공간돌출맵이다. 시간돌출맵의 가중치가 더 높게 부여되어 움직임이 존재하는 부분의 현저도가 높게 나타났다. 하지만 공간현저도맵의 값을 버리지 않았기 때문에 흰 하늘이 다음으로 높은 현저도를 가지고 있게 된다. 따라서 본 시스템은 공간과 시간돌출맵의 정보를 모두 취하고 있음을 확인할 수있다. Fig. 3(m)은 제안하는 시스템으로 시선처리한 결과이다. 이는 현저도 영역의 주의 순서를 숫자로 표시한 것이며 낮은 숫자일수록 더 높은 주의를 가지고 있다. 1번부터 4번까지 흰 박스 차량을 가르킴으로 움직임이 있는 부분의 현저도가 공간현저도보다 높게 나타났고 다음으로 5번과 6번의 흰 하늘의 공간 현저도가 높게 나타났다. 공간특징맵들을 동적 가중치 결합하고 시간과 공간돌출맵을 동적 결합함으로써 제안하는 시스템에서는 영상의 환경에 따라 시간과 공간현저도 특징을 가지는 시공간돌출맵을 동적으로 생성할 수 있음을 증명하였고, 연속되는 입력영상에서 움직임이 존재하는 물체의 움직임 특징을 분석하여 물체 크기에 적응적인 시간돌출맵을 생성하였다.

4.3 기존 연구와의 비교

4.3.1 작은 크기의 단일 물체가 이동

Fig. 4는 청색의 트럭이 톨게이트에 출입하는 영상에 대한 시스템 결과이다. 공간특징으로 적색의 톨게이트와 황색의 교통안전물이 눈에 띄며, 시간특징으로 좌측에서 우측으로 이동하는 청색의 트럭이 눈에 띈다. 제안한 시스템의 결과인 Fig 4(a)를 보면 움직임이 존재하는 트럭의 머리 부분에 가장 먼저 시선을 집중 시킨 후, 시선을 머물렀다가 그 다음에 적색의 톨게이트를, 그리고 화면 중앙화단의 녹색 식물에 시선을 이동한다. Fig. 4(b)에서 보이는 Dhavale [6]의 시스템 결과는 움직이는 청색의 머리 부분에만 시선을 머무르고 있는 것으로 나타났다. 제안하는 시스템은 색상이 단순하고 움직임 물체의 크기가 작은 영상에서 물체의 크기에 맞추어 시간현저도가 높은 영역을 잘 찾아내었으며, 움직임이 있는 물체 다음으로 공간현저도가 높은 부분에 시선을 집중하였다.

Fig. 4.The result of the image with small and single moving object : (a) our system (c) Dhavale‘s system[6].

4.3.2 작은 크기의 다수의 물체가 이동

Fig. 5는 Fig.4와 동일한 배경 하에 다수의 차량이 이동하는 영상에 대한 시스템 결과이다. 공간특징은 Fig. 4에서와 동일하며, 시간특징으로 청색 트럭과 은색 차량이 좌측에서 우측으로 이동하는데 은색 차량이 뒤에 있으며 청색 트럭보다 높은 이동량을 가지고 있다. 제안한 시스템의 결과를 보면 천천히 이동하는 트럭보다 우측에서 갑작스럽게 이동하여 나타나는 은색 차량에 먼저 시선을 집중하였다. Dhavale[6]의 시스템 결과는 더 빠르게 움직이는 뒤쪽의 은색 차량에만 시선을 두는 것으로 나타났다. 제안하는 시스템이 움직임이 다수 존재할 때 움직임의 양이 더 큰 물체에 시선을 집중한다는 것을 확인 할 수 있다.

Fig. 5.The result of the image with small and mulitple moving objects : (a) our system (c) Dhavale's system[6].

4.3.3 큰 크기의 단일 물체가 이동

Fig. 6은 큰 흰색의 탑차가 좌측에서 우측으로 이동하는 실험영상에 대한 시스템 결과이다. 공간특징으로 가운데의 흰 탑차, 오른쪽의 신호등과 여러 가지 색의 현수막 및 녹색 나무, 좌측 상단의 적색 집 등이 눈에 띄며, 시간특징으로 가운데의 좌측에서 우측으로 이동하는 흰 탑차가 눈에 띈다. 제안한 시스템의 결과, 크기가 큰 물체에 시선이 집중되는 것을 확인 할 수 있으며, Dhavale[6]의 시스템의 결과는 뒷배경의 녹색 나무에 시선이 가는 것으로 나타났다. 제안하는 시스템이 움직임의 크기가 크면 움직이는 물체에 더 시선을 집중한다는 것을 확인할 수 있다.

Fig. 6.The result of the image with big and single moving object : (a) our system (c) Dhavale[6]'s system.

4.3.4 큰 크기의 다수 물체가 이동

Fig. 7은 Fig. 6과 동일한 배경 하에 다수의 차량이 이동하는 실험영상에 대한 시스템 결과이다. 공간특징은 Fig 7과 동일하며, 시간특징으로 우측에서 좌측으로 이동하는 다수의 차량과 좌측에서 우측으로 이 동하는 흰색 차량 하나가 있는데, 다른 방향으로 이동하는 흰색 차량이 더 눈에 띈다. 제안한 시스템의 결과, 다른 방향으로 더 많이 움직이는 하얀색 차량에 주의가 높게 감을 확인 할 수 있으며, Dhavale[6] 의 시스템의 결과는 뒷 배경의 녹색 나무에 시선이 가는 것으로 나타났다. 제안하는 시스템은 움직임의 크기가 크면 움직이는 물체에 더 시선을 집중한다는 것을 확인 할 수 있다. 흰색 차량 부분이 눈에 띄게 되어 전체적으로 밝은 색 부분을 더 먼저 찾아냈고 Dhavale[6]의 시스템과는 달리 배경이 아닌 움직임에 시선을 집중하였다.

Fig. 7.The result of the image with big and multiple moving object : (a) our system (c) Dhavale's system[6].

4.3.5 전체 영상에서 작은 움직임이 존재

지금까지의 실험결과는 움직임이 있는 영역에 대하여 우선적으로 시선을 집중하였다. 움직임이 있다고 하더라도 눈에 잘 띄지 않는 작은 움직임의 경우에는 공간특징에 더 시선을 집중하는 것이 일반적이다. 따라서 이러한 종류의 실험을 수행하여 제안하는 시스템이 좀 더 사람처럼 처리하는지를 확인하였다. Fig. 8의 실험영상은 녹색 나무들 사이에 적색 간판이 있으며, 나무 저편 길에서 사람들이 움직이고 있다. 제안하는 시스템의 결과를 보면 적색 간판에 시선을 집중하는 것으로 나타났으며, Dhavale[6]의 시스템 결과는 흰색을 도로에 시선을 집중하는 것으로 나타났다. 제안하는 시스템이 움직임은 있지만 그 크기가 작아 눈에 잘 띄지 않을 때에는 시간현저도보다 공간현저도에 더 높은 가중치를 두어 공간현저도가 높은 것에 시선을 집중하는 것을 확인할 수 있다.

Fig. 8.An example of detecting spatial saliency : (a) our system (c) Dhavale's system[6].

 

5. 결 론

본 논문에서는 상향식 방법을 사용한 기존 연구의 한계점을 극복하여 동영상에서 공간현저도와 움직임 물체 크기에 적응적이고 움직임 영역의 크기를 고려한 시공간돌출맵 생성 모델을 제안하였다. 본 논문에서는 공간돌출맵에서 특징맵의 모든 값을 고려한 가중치 결합 방법을 제안하였고, 시간돌출맵에서 물체의 크기에 적응적인 시간돌출맵 생성 방법을 제안하였다. 본 연구에서는 특징맵의 활동량을 비교한 가중치결합을 사용함으로써 특징이 낮은 맵의 값을 무시하지 않도록 기존의 연구를 개선하였으며 색상 특징에 있어 R+/G-와 경쟁적인 R-/G+, B+/Y-와 경쟁적인 B-/Y+과 같은 서로 반대되는 특징을 가지는 색상들을 모두 고려하게 함으로써 영상의 환경에 따라 R과 G, B와 Y의 현저도를 적응적으로 추출할 수 있으며, 기존의 연구에서 특정 영상에서 Y값과 G값의 현저도가 추출되지 않았던 문제를 개선할 수 있었다. 제안하는 시스템의 공간돌출맵 생성은 SIFT로 추출한 정보를 새로운 분석 방법을 사용함으로써 물체 크기에 더 유사한 움직임 검출을 할 수 있다. 하지만 SIFT는 물체의 일치점을 찾는 알고리즘이어서 시간돌출맵 생성에서 경계선 특징이 낮은 물체나 갑자기 영상에 뛰어 들어온 물체는 잘 찾지 못하는 단점이 있다. 동적결합에 있어 시간돌출맵 가중치 결정을 할 때 움직임 영역의 자체 크기, 움직임 영역에 있어서의 주변 영역과의 크기 차이, 움직임 영역 안의 최대 움직임 크기 및 이를 제외한 주변영역과의 움직임 크기와의 차이 등을 함께 고려함으로써 영상에 따라 영상 내에 움직임 영역이 많고, 주변 영역과 비교하여 움직임이 존재하는 영역에서 움직임의 크기가 큰 움직임이 많으면 많을수록 가중치가 높게 설정되도록 조정되었다. 결론적으로 제안하는 시스템은 기존의 시스템들의 한계점을 극복하고 공간과 시간현저도를 영상의 환경에 따라 적응적으로 가져와, 보다 사람의 시각시스템과 유사한 결과를 낸다고 볼 수 있다. 하지만 제안하는 시스템이 인간의 시각을 구현하고자 한 모델임에도 불구하고 Cheoi와 Hong의 연구를 제외하고는 실제 인간을 대상으로하여 검증한 실험이 거의 없으며, 실영상을 위한 표준화된 데이터, 표준화된 실험방법도 없다. 따라서 향후 시각주의 시스템 평가에 필요한 표준화 된 성능 평가용 데이터 및 성능평가 기법에 대한 연구가 필요하며, 인식과정을 완전히 배제하고 인간실험이 있을 수 없고, 궁극적으로는 인간과 똑같은 인지과정을 갖는 시스템을 만드는 것이 목적이므로, 최종적으로 인식과정이 들어간 하향식 정보를 함께 이용한 하이브리드 시각주의 시스템을 개발하여야 한다. 또한 단계별 맵을 추출하고 재구성하는 과정에 있어서 필터의 크기에 따라, 입력된 영상의 크기에 따라 계산량이 좌우되기 때문에 실시간 처리를 위해서는 이에 대한 고려가 필요하다.

참고문헌

  1. L. Itti and C. Koch, "A Saliency-based Search Mechanism for Overt and Covert Shifts of Visual Attention," Vision Research, Vol. 40, No. 10-12, pp. 1489-1506, 2000. https://doi.org/10.1016/S0042-6989(99)00163-7
  2. K. Cheoi and Y. Lee, "A Method of Extracting Objects of Interest with Possible Broad Application in Computer Vision," Lecture Note on Computer Science 2525, pp. 331-339, 2002. https://doi.org/10.1007/3-540-36181-2_33
  3. Y. Zhai and M. Shah, "Visual Attention Detection in Video Sequences using Spatiotemporal Cues," Proceeding of the 14th Annual ACM International Conference on Multimedia, pp. 815-824, 2006.
  4. D. Lowe, "Distinctive Image Features from Scale-Invariant Keypoints," International Journal of Computer Vision, Vol. 60, No. 2, pp. 91-110, 2004. https://doi.org/10.1023/B:VISI.0000029664.99615.94
  5. C. Siagian and L. Itti, "Biologically Inspired Mobile Robot Vision Localization," IEEE Transactions on Robotics, Vol. 25, No. 4, pp. 861-873, 2009. https://doi.org/10.1109/TRO.2009.2022424
  6. N. Dhavale and L. Itti, “Saliency-based Multi-foveated MPEG Compression,” Proceeding of IEEE International Symposium on Signal Processing and its Applications, Vol. 1, pp. 229-232, 2003.
  7. H. Hong, Vision Information Processing System based on Visual Attention using Four Vision Path In Human, Master degree of Yonsei University, 2006.
  8. M. Park and K. Cheoi, “Selective Visual Attention System based on Spatiotemporal Features," Lecture Note on Computer Science 5068, pp. 203-212, 2008. https://doi.org/10.1007/978-3-540-70585-7_23
  9. K. Cheoi and M. Park, "Visual Information Selection Mechanism Based on Human Visual Attention,“ Jornal of Korea Multimedia Society, Vol. 14, No. 3, pp .378-391, 2011. https://doi.org/10.9717/kmms.2011.14.3.378
  10. D. Marr and E. Hildreth, “Theory of Edge Detection,” Proceeding of Royal Society London, Vol. 207, pp. 187-217, 1980. https://doi.org/10.1098/rspb.1980.0020