상기 과제를 해결하기 위해 본 발명이 강구한 제 1 해결수단은, 차량 주위를 비추는 카메라를 이용한 감시장치로서, 상기 카메라에 의해 촬영된 화상으로부터 옵티컬 플로우를 구하고, 당해 차량의 움직임과, 상기 카메라가 촬영하는 공간을 모델링한 공간모델을 이용하여, 배경으로 가정한 경우의 상기 화상의 옵티컬 플로우인 배경 플로우를 구하며, 상기 옵티컬 플로우와 상기 배경 플로우를 비교하여, 상기 차량 주위에 있는 물체의 움직임을 검출하는 것이다.
상기 발명에 의하면, 배경 플로우는 카메라화상을 배경으로 가정했을 경우의 옵티컬 플로우이므로, 이 배경 플로우와 카메라화상으로부터 실제로 구해진 옵티컬 플로우를 비교함으로써, 차량주위에 있는 물체의 움직임을 정밀도 좋게 검출할 수 있다. 또 설령 차량이 커브주행 중이어도, 화상 상 각 점에서의 배경 플로우와 옵티컬 플로우의 비교에 의해 검출을 행하므로, 접근물을 정확하게 검출할 수 있다. 또한 화상으로부터 구한 옵티컬 플로우의 크기가 작아져버리는 병진 주행차량이나 먼 곳의 접근물에 대해서도, 그 옵티컬 플로우는 화상 상의 그 점의 배경 플로우와 크게 다르므로 쉽게 검출 가능하다.
상기 감시장치에 있어서 상기 배경 플로우를, 상기 카메라가 촬영하는 공간을 모델링한 공간모델을 이용하여 구하는 것으로 한다.
상기 감시장치에 있어서의 공간모델은, 상기 카메라가 촬영하는 각 물체의 거리데이터에 기초하여 생성된 것으로 한다.
그리고 상기 감시장치에 있어서의 거리데이터는, 당해 차량에 설치된 장애물센서에 의해 측정된 것으로 한다.
또 상기 감시장치에 있어서의 공간모델은, 적어도 주행노면을 모델링한 노면모델을 포함하는 것으로 한다.
또한 상기 감시장치에 있어서의 공간모델은, 적어도 주행노면에 대하여 수직인 벽면을 가정한 벽면모델을 포함하는 것으로 한다.
그리고 상기 감시장치에 있어서의 벽면은, 차량 후측방에 있는 것으로 가정된 것으로 한다.
또 상기 감시장치에 있어서, 옵티컬 플로우와 배경 플로우의 비교 시에, 상기 옵티컬 플로우의 크기가 소정값보다 큰지의 여부를 판정하여, 소정값보다 클 때는, 각도 차를 이용하여 비교를 하는 한편, 그렇지 않을 때는, 각도 차를 이용하지 않고 비교를 하는 것으로 한다.
또한 상기 감시장치에 있어서의 소정값은, 화상 상 당해 위치의 배경 플로우 크기에 따라 설정되는 것으로 한다.
또 상기 감시장치에 있어서, 옵티컬 플로우와 배경 플로우의 비교에 의해, 상기 옵티컬 플로우 중에서 접근물후보 플로우를 특정하고, 근방에 있는 상기 접근물후보 플로우를 관련시킴으로써 접근물후보 영역을 생성하며, 상기 접근물후보 영역의 면적이 소정값보다 작을 때, 이 접근물후보 영역에 관한 접근물후보 플로우는 노이즈인 것으로 판단하는 것으로 한다.
또한 본 발명이 강구한 제 2 해결수단은, 차량의 주위를 비추는 카메라를 이용한 감시장치로서, 상기 카메라에 의해 촬영된 화상으로부터 옵티컬 플로우를 구하고, 상기 옵티컬 플로우와, 당해 차량의 움직임과, 상기 카메라가 촬영하는 공간을 모델링한 공간모델을 기초로, 상기 화상 상 점의 실세계좌표 상의 움직임인 공간플로우를 구하여, 상기 공간플로우를 기초로, 당해 차량의 주위에 있는 물체의 움직임을 검출하는 것이다.
또 본 발명이 강구한 제 3 해결수단은, 감시방법으로서, 차량의 주위를 비추는 카메라에 의해 촬영된 화상으로부터 옵티컬 플로우를 구하고, 상기 차량의 움직임과, 상기 카메라가 촬영하는 공간을 모델링한 공간모델을 이용하여, 배경으로 가정한 경우의 상기 화상의 옵티컬 플로우인 배경 플로우를 구하며, 상기 옵티컬 플로우와 상기 배경 플로우를 비교하여, 상기 차량의 주위에 있는 물체의 움직임을 검출하는 것이다.
또한 상기 감시방법에 있어서, 상기 차량에 설치된 차속 센서 및 조향각 센서의 출력을 이용하여, 상기 차량의 움직임을 추정하는 것이다.
삭제
상술한 목적 및 기타의 목적과 본 발명의 특징 및 이점은 첨부 도면과 관련한 다음의 상세한 설명을 통해 보다 분명해 질 것이다.
(실시예)
이하, 본 발명의 실시예에 대하여 도면을 참조하여 설명한다.
(제 1 실시예)
본 발명의 제 1 실시예에서는 다음과 같이 하여 차량 주위의 감시를 실행한다. 우선, 차량 주위를 비추는 카메라로부터의 화상을 이용하여 옵티컬 플로우(optical flow)를 구한다. 다음으로 카메라화상 상의 점과 실세계 3 차원 좌표의 대응을 "공간모델"로서 추정한다. 도 37에 나타내는 바와 같이, 이 공간모델에 투시투영변환을 이용함으로써, 카메라화상 상의 점과 실세계 3 차원 좌표를 정확하게 대응시킬 수 있다. 그리고 이 공간모델과, 추정된 자기차량 움직임 정보를 이용하여, 화상 상의 각 점이 이동물체가 아닌 배경인 경우를 가정한 옵티컬 플로우를 계산으로 구한다. 이와 같이 하여 구한 옵티컬 플로우를 "배경 플로우"라 부른다. 이 배경 플로우와, 화상으로부터 실제로 구한 옵티컬 플로우를 비교함으로써 접근물을 검출한다.
즉, 배경 플로우는 카메라화상 상의 점과 실세계 3 차원 좌표의 대응을 정확하게 고려하여 계산된 것이므로, 본 실시예에 의하면 종래예에 비해 차량 주위에 있는 물체의 움직임을 정밀도 좋게 검출할 수 있다. 또 커브주행 중이어도, 화상 상 각 점의 배경 플로우와 옵티컬 플로우의 비교에 의해 검출하므로, 접근물을 정확하게 검출할 수 있다. 또한 화상으로부터 구한 옵티컬 플로우의 크기가 작아져버리는 병진주행 차량이나 먼 곳의 접근물에 대해서도, 그 옵티컬 플로우는 그 점에서의 배경 플로우와 크게 다르므로, 본 실시예에서는 쉽게 검출 가능해진다.
도 1은 본 실시예에 관한 차량용 감시장치의 기본구성을 개념적으로 나타내는 블록도이다. 본 실시예에 관한 차량용 감시장치는, 차량 주위를 비추는 카메라(11)를 이용하여 당해 차량의 주위에 있는 물체의 움직임을 검출한다. 구체적으로는 도 1에 나타내는 바와 같이, 기본구성으로서, 카메라(11)에 의해 촬상된 화상으로부터 옵티컬 플로우(Vi)를 산출하는 옵티컬 플로우 검출부(12)와, 당해 차량의 움직임을 추정하는 자기차량 움직임 추정부(13)와, 카메라(11)가 촬영하는 공간의 모델을 추정하는 공간모델 추정부(14)와, 자기차량 움직임과 공간모델에 기초하여 배경 플로우(Vdi)를 추정하는 배경 플로우 추정부(15)와, 옵티컬 플로우(Vi)와 배경 플로우(Vdi)를 비교함으로써 접근물을 검출하는 접근물 검출부(16)를 구비한다.
카메라(11)는, 전형적으로 자기차량에 설치되며, 당해 차량 주위의 상황을 감지한다. 또 도로상이나 신호기, 건물 등 기반설비에 장착된 카메라나 주변차량에 장착된 카메라를, 자기차량에 설치된 카메라와 함께, 또는 단독으로 이용해도 된 다. 이는 전망이 좋지 않은 교차점 등, 자기차량에서 접근차량이 보이기 어려운 상황 등에 있어서 효과적이다.
<옵티컬 플로우 검출>
옵티컬 플로우 검출부(12)는, 카메라(11)에 의해 촬영된 시간적으로 다른 2 장의 화상으로부터, 화상 상의 외견상 움직임을 나타내는 벡터, 즉 "옵티컬 플로우"를 검출한다. 옵티컬 플로우의 검출에는, 화상의 시공간미분의 구속방정식을 이용하는 경사법과, 템플레이트 매칭을 이용하는 블록 매칭법이 널리 알려져있다.("다이내믹 신의 이해" 아사다 미노루(淺田 稔)저, 전자정보통신학회). 여기서는 블록 매칭법을 이용하는 것으로 한다.
블록 매칭법은 일반적으로 전체탐색을 행함으로, 막대한 처리시간을 필요로 한다. 때문에 화상의 계층화라는 수법이 처리시간 삭감을 위해 널리 이용되고 있다("3 차원 비젼" 서 강(徐 剛), 츠지 사브로오 공저, 교오리츠(共立)출판). 즉, 주어진 화상으로부터 가로세로 각각 1/2, 1/4, 1/8, ···로 압축시킨 계층화화상을 작성한다. 이 화상의 계층화에 의해, 분해능이 높은(크기가 큰) 화상에서는 멀리 떨어졌던 두 점도, 분해능이 낮은(크기가 작은) 화상에서는 가까워진다. 여기서 우선, 분해능이 낮은 화상에 대하여 템플레이트 매칭을 행하고, 그 결과 구해진 옵티컬 플로우의 근방만으로, 그 다음 분해능이 높은 화상에 대하여 템플레이트 매칭을 행한다. 이와 같은 처리를 반복함으로써, 최종적으로 분해능이 높은 원화상에서의 옵티컬 플로우를 구할 수 있다. 더욱이 국소적인 탐색이면 되므로, 처리시간을 대폭 삭감할 수 있다.
<자기차량 움직임 추정>
자기차량 움직임 추정부(13)는, 자기차량 좌우 양 차륜의 회전속도와 핸들의 조향각(rudder angle)을 구하고, 이로써 자기차량의 움직임을 추정한다. 이 추정방법을 도 2 및 도 3을 이용하여 설명한다. 그리고 여기서는 타이어의 사이드 슬립이 발생하지 않는 것으로 근사한, 이른바 애커만(Ackerman)모델(2륜모델)을 이용한다.
도 2는 애커만 스티어링 모델을 나타내는 도이다. 타이어의 사이드 슬립이 없다고 가정한 경우, 스티어링을 꺾으면 차량은 후륜(3b) 축의 연장선 상의 점(0)을 중심으로 선회한다. 후륜(3b) 중앙의 회전반경(Rs)은, 전륜(3a)의 조향각(steering angle)(β) 및 축간거리(l)를 이용하여 (식 3)과 같이 표시된다.
도 3은 2 차원 상의 차량 움직임을 나타내는 것이다. 도 3에 나타내는 바와 같이 후륜(3b)의 중앙이 Ct로부터 Ct+1로 움직였다 하면, 그 이동량(h)은 좌우의 차륜속(Vl, Vr), 또는 후륜(3b) 중앙의 회전반경(Rs) 및 이동회전각(
)을 이용하여 (식 4)와 같이 표시된다.
(식 3) 및 (식 4)로부터, 이동회전각(
)은 (식 5)와 같이 표시된다.
따라서 차량의 평면에 대한 회전량(
)은 (식 6)으로 표시된다.
또 Ct에서 Ct+1로의 이동벡터(T)는, 차량진행방향으로 X축, 수직방향으로 Y축을 취하면, (식 7)로 표시된다.
(식 6) 및 (식 7)로부터, 차량의 좌우 차륜속(Vl, Vr) 및 핸들 조향각(
)을 알면, 차량의 움직임을 추정할 수 있다.
물론 차륜속과 핸들의 조향각 정보만이 아니라, 차속 센서, 각속도(Yaw Rate) 센서를 이용하여 직접 차량의 움직임을 구해도 된다. 또한 GPS나 지도정보를 이용하여 차량의 움직임을 구해도 된다.
<공간모델 추정>
공간모델 추정부(14)는, 카메라가 촬영하는 공간을 모델링한 공간모델을 추정한다. 공간모델은 상술한 바와 같이, 카메라화상 상의 점과 실세계 3 차원 좌표 의 대응관계를 구하기 위해 이용된다. 즉, 카메라화상 상의 임의점은, (식 1) 및 (식 2)를 이용함으로써, 카메라의 초점위치를 통하는 실세계공간 상의 어느 직선에 대응시킬 수 있다. 이 실세계공간 상의 직선과, 추정한 공간모델의 교차점을 구함으로써, 카메라화상 상의 임의점을 실세계 3 차원 좌표에 사영할 수 있다.
여기서는 카메라(11)가 촬영하는 각 물체의 거리데이터에 기초하여 공간모델을 생성하는 것으로 한다. 이 거리데이터의 측정은, 예를 들어 양안시(binocular vision), 움직임 스테레오법을 이용하거나, 레이저, 초음파, 적외선, 밀리파 등을 이용한 장애물센서가 차량에 설치돼있는 경우에는, 이를 이용하거나 함으로써 실행할 수 있다.
또 건물 등의 기반설비에 고정된 카메라를 이용할 경우, 카메라에 찍히는 건물 등의 형상이 변화하는 일은 매우 드물기 때문에, 카메라가 촬영하는 공간의 3 차원 정보는 이미 알려진 것이다. 이 경우, 공간모델을 추정할 필요는 없으며, 카메라별로 이미 알려진 공간모델을 미리 정해두면 된다.
또한 카메라가 차량에 설치돼있는 경우라도, GPS 등을 이용하여 그 위치를 정확하게 알 수 있으므로, 현재위치를 상세한 지도데이터와 조회함으로써 공간모델을 추정하는 것도 가능하다. 예를 들어 차량이 터널을 주행 중인 것을 GPS와 지도데이터로부터 알았다 하면, 이 터널의 높이나 길이 등의 형상정보로부터 공간모델을 생성할 수 있다. 이와 같은 형상정보는, 지도데이터에 미리 부여해두어도 되며, 터널 등의 기반설비 쪽에 유지시켜두고, 통신으로 얻을 수 있도록 해도 된다. 예를 들어 터널의 형상정보를, 터널입구 등에 설치한 DSRC 등의 통신수단에 의해, 터널 로 진입하고자 하는 차량으로 송신한다. 물론 이와 같은 방법은 터널에 한정된 것은 아니며, 일반도로, 고속도로, 주택지 또는 주차장 등에서도 이용할 수 있다.
<배경 플로우 추정>
배경 플로우 추정부(15)는 공간모델에 대응하는 점이 움직이지 않는, 즉 이동물체가 아닌 배경인 것으로 가정한 경우의 화상 움직임(옵티컬 플로우)을 배경 플로우로서 검출한다.
도 4는 배경 플로우 추정부(15)의 동작을 나타내는 흐름도이며, 도 5는 차량(1)이 커브 등에서 선회하는 상황을 상정한 개념도이다. 도 5에서는 카메라(2)가 차량(1)에 설치되므로, 카메라(2)의 움직임과 차량(1)의 움직임은 같다. 또 5는 카메라(2)에 찍혀진 배경물체이다.
우선 시각(t-1)에서 촬영된 카메라화상 상의 임의점(PreXi, PreYi)을, 공간모델 추정부(14)에 의해 추정된 공간모델을 이용하여 실세계 3 차원 좌표(Xw, Yw, Zw)에 사영한다(S11). 이 때, (식 1)에 나타낸 투시투영 변환식과 (식 2)에 나타낸 좌표 변환식을 이용한다. 또 (식 2)의 실세계 좌표계에서의 카메라 초점위치는 시각(t-1)에서의 카메라(2) 초점위치이다.
다음으로, 자기차량 움직임 추정부(13)에 의해 추정된 시각(t-1)에서 시각(t)까지의 차량(1) 이동량(h)을 기초로, 시각(t)의 실세계에서의 자기차량 위치, 즉 실세계 좌표계에서의 카메라(2) 초점위치를 구한다(단계(S12)). 그리고 이 실세계 좌표계에서의 카메라(2) 초점위치에 기초하여, (식 2)의 각 상수(r)를 변경한다(단계(S13)). 이 처리를 반복함으로써, (식 2)의 실세계 좌표계에 있어서 카메 라의 초점위치는 계속 갱신되며, 항상 정확한 위치를 나타내게 된다.
또 (식 1)과 갱신된 (식 2)를 이용하여, 단계(S11)에서 구한 실세계 좌표(Xw, Yw, Zw)를 카메라화상 상의 점(NextXi, NextYi)에 재사영한다(단계(S14)). 이와 같이 하여 구한 카메라좌표(NextXi, NextYi)는, 시각(t-1)에서의 카메라화상 상 점(PreXi, PreYi)이, 시각(t-1)에서 시각(t)까지 사이에 움직이지 않는 배경물체(5)의 한 점인 것으로 가정한 경우의, 시각(t)에서의 카메라화상 상 위치를 나타낸다. 그리고, 시각(t-1)에서의 카메라화상 상 점(PreXi, PreYi)이 배경의 일부인 것으로 가정한 경우의 배경 플로우로서, (NextXi-PreXi, NextYi-PreYi)를 구한다(단계(S15)).
그리고 여기서는 설명을 간단히 하기 위해 차량이 커브하는 경우를 예로 들어 설명했지만, 직진 시나 주차 시 등에 있어서도 마찬가지 방법으로 배경 플로우를 구할 수 있다.
<접근물 검출>
도 6은 접근물 검출부(16)의 구성을 개념적으로 나타내는 블록도이다. 도 6에서 플로우 비교부(16a)는 옵티컬 플로우 검출부(12)에 의해 카메라화상으로부터 실제로 구해진 옵티컬 플로우(Vi)와, 배경 플로우 검출부(15)에 의해 구해진 배경 플로우(Vdi)를 비교하여, 접근물후보 플로우를 검출한다. 그리고 노이즈 제거부(16b)는, 플로우 비교부(16a)에 의해 구해진 접근물후보 플로우로부터 노이즈를 제거하고 접근물 플로우만을 검출한다.
도 7은 플로우 비교부(16a)의 동작을 나타내는 흐름도이다. 여기서 옵티컬 플로우(Vi)와 배경 플로우(Vdi)의 비교는, 원칙적으로 그 각도 차를 이용하여 행한다. 그러나 옵티컬 플로우(Vi)의 크기가 작을 때는 그 방향정보의 신뢰성이 낮으므로, 판별 정밀도를 유지할 수 없게 된다. 예를 들어 자기차량과 거의 등속으로 주행하는 타 차량에 관한 옵티컬 플로우(Vi)는, 크기가 매우 작으며 또 그 방향은 촬영시점에 따라 자기차량을 향하거나 반대방향을 향하거나 하여 시시각각으로 변화한다. 그래서 본 실시예에서는, 옵티컬 플로우(Vi)의 크기가 소정값보다 작을 때는, 각도차를 이용하지 않고 별도의 비교기준(S43)을 이용함으로써, 판별의 신뢰성을 높인다.
구체적으로는, 우선 옵티컬 플로우(Vi)의 크기를 조사한다(S41). 옵티컬 플로우(Vi)가 충분한 크기를 가질 때(소정값(THVi)보다 클 경우), 옵티컬 플로우(Vi)는 방향정보에 대하여 충분한 신뢰성을 갖는 것으로 생각되므로, 배경 플로우(Vdi)와의 비교를 각도 차를 이용하여 행한다(S42). 즉, 옵티컬 플로우(Vi)와 배경 플로우(Vdi) 각도 차의 절대값이 소정값(THArg) 이상일 때, 그 옵티컬 플로우(Vi)는 배경 플로우(Vdi)와 다른 것으로 생각되므로, 접근물의 플로우로 판별한다(S44). 또 각도차의 절대값이 충분히 작을 때(S42에서 No), 그 옵티컬 플로우(Vi)는 배경 플로우(Vdi)에 가까우무로, 접근물의 플로우가 아니라고 판별한다(S45). 또 임계값(THVi)은 0.1 [Pixel] 정도, 임계값(THArg)은 π/2 정도인 것이 바람직하다. 여기서, 단계(S41)에서 YES로 판단됐을 때에 각도정보만 이용하고 크기정보를 이용하지 않는 것은, 자기차량에서 멀어져 가는 이동물체를 접근물로 판별하지 않도록 하기 위해서이다. 물론, 플로우의 벡터 차의 절대값을 판별기준으로 이용해도 상관없다.
또 옵티컬 플로우(Vi)가 충분한 크기를 갖지 않을 때(S41에서 No), 배경 플로우와의 비교를 각도 차를 이용하여 행할 수는 없다. 그래서 이 경우는 플로우의 크기에 착안한다. 즉, 옵티컬 플로우(Vi)와 배경 플로우(Vdi)의 벡터 차의 절대값이 소정값(THvdi) 이상인지 여부를 판정하고(S43), 소정값(THvdi) 이상일 때는 접근물 플로우로 판별하며(S44), 그렇지 않을 때는 접근물 플로우가 아니라고 판별한다(S45). 옵티컬 플로우(Vi)의 크기가 작고, 또 그것이 접근물인 상황으로서는,
1. 접근물이 자기차량과 거의 같은 속도로 주행하고 있다
2. 접근차량이 먼 곳을 달리고 있다
의 2 가지를 생각할 수 있지만, 어느 상황에서도 배경 플로우(Vdi)는 정확하게 구할 수 있으므로, 고 정밀도의 접근물 판별이 가능하다. 또 임계값(THvdi)은 0.1[Pixel] 정도인 것이 바람직하다.
또한 단계(S43)에서 옵티컬 플로우(Vi)의 크기가 충분히 작은 것에 착안하여, 옵티컬 플로우(Vi)와 배경 플로우(Vdi)의 벡터 차의 절대값이 아니라, 배경 플로우(Vdi)의 크기만을 소정값과 비교하도록 해도 된다. 이 경우, 배경 플로우(Vdi)가 충분히 클 때는 접근물 플로우인 것으로 판별하며, 충분히 작으면 접근물 플로우가 아닌 것으로 판별하면 된다.
또 여기서의 플로우 비교에서 이용한 임계값(THVi, THArg, THvdi)은 화상 상의 위치함수로서 설정해도 된다. 예를 들어 배경 플로우(Vdi)가 작은 위치에서는 임계값(THVi, THvdi)을 작게 하고, 배경 플로우(Vdi)가 큰 위치에서는 임계값(THVi
, THvdi)을 크게 한다. 이로써, 노이즈의 영향을 억제하면서 또 먼 곳에서도 정확한 판별을 행할 수 있다.
도 8은 노이즈 제거부(16b)의 동작을 나타내는 흐름도이다. 플로우 비교부(16a)에 의해 접근물 플로우로 검출된 것 중에는 노이즈가 포함되므로, 이들을 모두 접근물인 것으로 검출해버리면 검출 정밀도의 열화를 초래해버린다. 그래서 노이즈 제거부(16b)는 노이즈나 접근물을 모델링하고, 그 모델을 플로우 비교부(16a)에 의해 검출된 접근물 플로우(접근물후보 플로우)와 비교함으로써, 접근물만을 검출한다.
우선, 접근물후보가 노이즈일 경우, 시간적으로도 공간적으로도 연속적으로 검출되지 않을 것이다. 그러나 접근물후보 플로우가 노이즈가 아닌 실제 접근물에 관한 것일 경우는, 접근물은 어느 정도의 크기를 가지므로, 유사한 접근물후보 플로우가 공간적으로 접근물 크기만큼의 영역을 차지할 것이다.
그래서 근방에 있는 접근물후보 플로우를 관련시키고, 관련시킨 접근물후보 플로우에 관한 영역끼리를 연결하여, 연결된 영역을 접근물후보 영역(Ai)으로 한다(S51). 그리고 이 접근물후보 영역(Ai)의 면적(Si)을 구하고(S52), 이 면적(Si)을 소정값(THsi)과 비교한다(S53). 여기서 접근물후보 영역(Ai)이 카메라에 서 떨어져있을 때는 소정값(THsi)을 작게 설정하는 한편, 접근물후보 영역(Ai)이 카메라에 가까울 때는 소정값(THsi)을 크게 설정한다. 면적(Si)이 소정값(THsi)보다 작을 때(S53에서 No)는, 영역(Ai)이 노이즈인 것으로 판단한다(S54). 한편, 면적(Si)이 소정값(THsi) 이상일 때는 단계(S55)로 진행한다.
단계(S55)에서는 접근물의 모델링에 의한 노이즈 제거처리를 행한다. 카메라가 차량에 설치돼있는 것을 고려하면, 접근물은 자동차나 오토바이, 자전거 등인데, 어느 접근물도 노면 위를 주행하는 물체이다. 그래서 접근물후보 영역(Ai)이 공간모델의 노면 상에 존재하는지 여부를 판정하여(S55), 존재하지 않을 때는 영역(Ai)은 노이즈인 것으로 판단하고(S54), 다음 프레임의 처리를 실행한다. 한편, 접근물후보 영역(Ai)의 적어도 일부가 노면 상에 존재할 때는 단계(S56)로 진행한다.
단계(S56)에서는 시간방향의 필터링처리를 행한다. 접근물은, 화면상에 갑자기 나타나거나, 혹은 갑자기 사라지거나 하는 일은 있을 수 없으므로, 그 영역은 수 프레임 연속적으로 존재할 것이다. 도 9는 직진주행 시에 타 차량이 후방으로부터 접근하는 상황을 나타낸다. 현 시각(t)에서는 도 9 (a)의 왼쪽 도면과 같이 접근차량(6)이 촬영되므로, 접근물후보 영역(At)은 도 9 (a)의 오른쪽 도면과 같이 검출된다. 또 현 시각(t)보다 조금 전의 시각(t-1, t-2, ···, t-N)에서, 접근물후보 영역(At-1, At-2, ···, At-N)은 각각 도 9의 (b), (c), (d)와 같이 검출된다. 여기서, 시간간격이 충분히 작은 것으로 하면, 접근차량(6)은 화상 상에서 크 게 움직이지 않으므로, 영역(At-1, At-2, ···, At-N)은 영역(At)과 그 일부가 겹친다. 이에 반해, 접근물후보 영역이 카메라의 진동 등에 기인하여 발생한 것일 경우, 그 후보영역은 단시간밖에 검출되지 않을 것이다.
그래서 접근물후보 영역(Ai)에 대응하는 이전 수 프레임 영역에서, 접근물후보 영역이 존재하는 비율을 소정값과 비교한다(S56). 그리고 그 비율이 소정값보다 낮을 때, 그 접근물후보 영역(Ai)이 접근물일 가능성은 낮으므로, 이 접근물후보 영역(Ai)을 유지하며(S57), 다음 프레임의 처리를 행한다. 한편, 이전 수 프레임에서 접근물후보 영역이 존재하는 비율이 소정값보다 높을 때, 그 접근물후보 영역(Ai)은 접근물에 의한 것으로 판단하고, 다음 프레임의 처리를 행한다(S58). 예를 들어 전 10 프레임 중에서 6 회 이상 검출됐을 때, 접근물인 것으로 판단한다.
또 카메라를 차량 전방이나 후방을 향해 설치하고, 또 접근물은 승용차만인 것으로 가정하면, 카메라에 찍히는 접근물의 화상은 승용차를 전방, 혹은 후방에서 본 화상만으로 된다. 때문에 접근물영역의 크기는 폭 약 2m, 노면으로부터의 높이 약 1.5m로 한정할 수 있다. 그리고 접근물후보 영역을 이 크기로 설정하고, 영역 내에 존재하는 접근물 플로우의 개수가 최대로 되도록, 접근물후보 영역의 위치를 설정해도 된다. 이 경우, 접근물후보 영역에 포함되는 접근물 플로우의 개수가 소정값보다 큰지의 여부에 따라, 접근물과 노이즈의 판별을 할 수 있다. 이와 같은 처리를, 단계(S51~S53) 대신에 실행해도 된다.
이상과 같이 본 실시예에 의하면, 배경 플로우와, 카메라화상으로부터 실제 로 구해진 옵티컬 플로우를 비교함으로써, 차량주위에 있는 물체의 움직임을 정밀도 좋게 검출할 수 있다.
또 가령 차량이 커브주행 중이어도, 화상상 각 점의 배경 플로우와 옵티컬 플로우의 비교에 의해 검출을 행하므로, 접근물을 정확하게 검출할 수 있다. 또한 화상으로부터 구한 옵티컬 플로우의 크기가 작아져버리는, 병진주행 차량이나 먼 곳의 접근물에 대해서도, 그 옵티컬 플로우는 화상 상의 그 점에서의 배경 플로우와 크게 다르므로, 쉽게 검출할 수 있다.
<배경 플로우 추정의 다른 예>
<제 1 예>
도 5와 같이, 카메라(2)가 회전반경(Rs), 회전각(
)으로 움직이며, 카메라(2)에 찍힌 물체(5)가 전혀 움직이지 않았다 하면, 이 때 구해지는 옵티컬 플로우는 도 10과 같이, 카메라(2)는 움직이지 않았지만 카메라(2)에 찍히는 모든 물체(5)가 회전각(
)으로 움직인 경우에 구해지는 옵티컬 플로우와 동등해진다. 즉, 카메라가 실세계 좌표계에서 벡터(V)만큼 이동할 경우에 구해지는 옵티컬 플로우와, 카메라에 찍히는 모든 물체가 벡터(-V)만큼 이동할 경우에 구해지는 옵티컬 플로우는 동등하다.
그래서 카메라의 움직임에 기초하여 배경 플로우를 구하는 것이 아니라, 카메라는 고정되며 움직이지 않는 것으로 가정하고, 공간모델을 움직이게 함으로써 배경 플로우를 구해도 된다. 도 11은 이와 같은 경우의 배경 플로우 추정 처리를 나타내는 흐름도이다.
우선 도 4의 단계(S11)와 마찬가지로, 시각(t-1)에서 촬영된 카메라화상 상의 임의점(PreXi, PreYi)을, 공간모델 추정부(14)에 의해 추정된 공간모델을 이용하여 실세계 3 차원 좌표(PreXw, PreYw, PreZw)에 사영한다(S21). 이 때, (식 1)에 나타낸 투시투영 변환식과 (식 2)에 나타낸 좌표 변환식을 이용한다.
다음으로, 자기차량 움직임 추정부(13)에 의해 추정된 시각(t-1)에서 시각(t)까지의 차량(1) 이동량(h)을 기초로, 단계(S21)에서 구한 실세계 좌표(PreXw, PreYw, PreZw)를 차량(1)에 대하여 상대적으로 이동시킨다. 즉, 실세계 좌표(PreXw, PreYw, PreZw)를, 이동량(h)에 관한 회전중심 좌표(O) 및 회전각(
)을 이용하여 회전시켜, 실세계 좌표(NextXw, NextYw, NextZw)를 구한다(S22). 또 (식 1), (식 2)를 이용하여, 단계(S22)에서 구한 실세계 좌표(NextXw, NextYw, NextZw)를 카메라화상 상의 점(NextXi, NextYi)에 다시 사영한다(S23). 그리고 도 4의 단계(S15)와 마찬가지로, (NextXi-PreXi, NextYi-PreYi)를 배경 플로우로서 구한다(S24).
여기서, 단계(S22)에서 구해진 (NextXw, NextYw, NextZw)는, 시각(t-1)의 공간모델에 의해 예측된 시각(t)에서의 공간모델이라 할 수도 있으므로, 이와 같은 처리를 계속함으로써 공간모델을 갱신해도 된다. 또는 접근물 검출부(16)에 의해 배경으로 판정된 부분만 이와 같은 공간모델의 갱신처리를 행하고, 그 이외 영역에 대해서는 상술한 방법에 의해 공간모델을 다시 구하도록 해도 된다.
<제 2 예>
상술한 2 가지 방법은 모두 카메라화상 상의 점을 실세계 3 차원 좌표로 변 환하고, 실세계 좌표계에서 가정한 공간모델을 이용하여 처리를 실시했다. 이에 반해 카메라 좌표계로 모든 처리를 실시하는 것도 가능하다. 도 12는 이와 같은 경우의 배경 플로우 추정처리를 나타내는 흐름도이다. 이 경우, 공간모델은 카메라 좌표계로 기술할 필요가 있다. 카메라 좌표계와 실세계 좌표계는 1 대 1로 대응하므로, 실세계 좌표계로 가정한 공간모델은, (식 2)에 따라 카메라 좌표계로 쉽게 변환시킬 수 있다.
우선 시각(t-1)에서 촬영된 카메라화상 상의 임의점(PreXi, PreYi)을 카메라 좌표계로 기술된 공간모델을 이용하여, 카메라 좌표계에서의 3 차원 위치(PreXc, PreYc, PreZc)에 사영한다(S31). 이 때 (식 1)에 나타낸 투시투영 변환식을 이용한다.
다음에, 자기차량 움직임 추정부(13)에 의해 추정된 시각(t-1)에서 시각(t)까지의 차량(1) 이동량(h)을 기초로, 단계(S31)에서 구한 카메라 좌표(PreXc, PreYc, PreZc)를 차량(1)에 대하여 상대적으로 이동시킨다. 즉, 카메라 좌표(PreXc, PreYc, PreZc)를, 이동량(h)에 관한 카메라화상계의 회전중심 좌표(C), 회전각(
c)을 이용하여 회전시켜, 카메라 좌표(NextXc, NextYc, NextZc)를 구한다(S32). 또 (식 1)을 이용하여, 단계(S32)에서 구한 카메라 좌표(NextXc, NextYc, NextZc)를 카메라화상 상의 점(NextXi, NextYi)에 재사영한다(S33). 그리고 도 4의 단계(S15)와 마찬가지로, (NextXi-PreXi, NextYi-PreYi)를 배경 플로우로서 구한다(S34).
이와 같이 공간모델은 카메라화상으로부터 실세계 3 차원 좌표계로의 변환, 또는 카메라화상으로부터 카메라 좌표계로의 변환을 위해 이용된다. 여기서 공간모델을, 카메라화상으로부터 실세계 3 차원 좌표계로의 변환식, 또는 카메라화상으로부터 카메라 좌표계로의 변환식으로서 기술하는 것도 가능하다.
도 13은 본 발명에 관한 배경 플로우가 화살표로 표시된 카메라화상의 예이다. 이미 설명한 바와 같이 배경 플로우는, 실제로 카메라화상으로부터 구해진 옵티컬 플로우와 비교하기 위해 이용되며, 접근물의 검출기준이 된다. 도 13을 보면 알 수 있는 바와 같이, 배경 플로우는 주행노면의 커브를 고려한 것이다. 즉, 본 발명은 종래에 비해, 커브에 있어서도 접근물을 정밀도 좋게 검출 가능함이, 도 13에서 직감적으로 이해할 수 있다.
본 발명에 의하면, 자기차량으로 접근하는 물체만을 정확히 검출하는 것이 가능하다. 그리고 이 검출결과를 이용하여, 예를 들어 접근차량만을 강조한 화상을 표시하거나, 접근차량의 존재를 음성이나 화상, 핸들이나 의자의 진동, LED와 같은 위험표시램프의 점등 등으로 경고하거나 할 수 있다. 또 위험한 상황일 때, 스티어링이나 브레이크를 자동으로 제어하여, 접근차량과의 접촉이나 충돌을 회피하도록 해도 상관없다.
여기서는 배경 플로우를 이용한 강조표시에 대하여 설명한다.
도 38은 커브주행 중의 후방화상에, 접근차량에 대응하는 옵티컬 플로우만을 중첩 표시한 예이다. 도 38에서는, 자기차량에서 거의 등거리만큼 떨어진 차량(A, B)이 거의 등속도로 접근하고 있다. 도 38에 나타내는 바와 같이, 커브 바깥쪽 차량(A)에 대해서는 중첩 표시된 옵티컬 플로우(화살표)에 의해, 이용자는 그 접근을 인식할 수 있다. 그러나 커브 안쪽의 챠량(B)에 대해서는 옵티컬 플로우가 거의 0 이므로, 이용자는 접근을 인식할 수 없다. 이와 같이 커브주행 중에서는, 단순히 옵티컬 플로우를 중첩 표시하는 것만으로는 접근물의 존재를 인식할 수 없는 경우가 있다.
그 원인은, 자기차량의 커브주행에 의해 발생하는 배경 플로우와, 접근차량의 움직임에 의한 플로우가 서로 상쇄함에 있다. 도 39는 도 38 화상의 배경 플로우이다. 도 39에서 화살표(A2, B2)는 각각 차량(A, B)의 위치에 대응하는 배경 플로우이다. 도 39에서 알 수 있는 바와 같이, 차량(B) 위치에서의 배경 플로우(B2)는 차량(B)의 움직임과 역방향이다.
그래서 접근차량의 움직임만을 눈에 띄도록 하기 위해, 구해진 옵티컬 플로우로부터 배경 플로우를 벡터적으로 감산하고, 얻어진 플로우를 카메라화상에 중첩 표시한다. 도 40은 그 표시예이다. 도 38과 달리, 접근차량(A, B) 모두 플로우가 표시되며, 따라서 이용자는 접근차량의 존재를 확실하게 인식할 수 있다.
물론 상술한 바와 같이 접근물 플로우를 연결시켜 접근물영역을 구하고, 후술하는 도 26의 (b)와 같이 접근물영역에 틀을 그려 강조표시해도 된다. 또 접근물 플로우나 접근물영역이 클수록, 접근물이 보다 접근해있어 위험도가 높다고 생각되므로, 접근물 플로우나 접근물영역의 크기에 따라, 틀의 색이나 굵기, 선의 종류 등을 바꾸어도 된다.
또한 화상 대신에, 혹은 화상과 함께 음성으로 경고해도 상관없다. 이 경우, 접근물이 존재하는 위치 쪽으로부터 소리가 들리도록 하면 효과적이다. 또 위험도 에 따라 소리의 크기나 멜로디, 템포, 주파수 등을 바꾸어도 된다. 예를 들어 차량이 오른쪽 후방으로부터 천천히 접근해올 때는, 운전자의 오른쪽 후방으로부터 작은 소리를 발하며, 차량이 왼쪽 후방으로부터 급속히 접근해올 때는, 왼쪽 후방으로부터 큰 소리를 발하도록 하면 된다.
또 상술한 실시예에서는 자기차량의 움직임을 차륜의 회전속도와 핸들의 조향각으로 추정했다. 이에 반해, 자기차량에 설치된 카메라의 화상을 이용하여 차량(카메라 자체)의 움직임을 검출하는 것도 가능하다. 이 수법에 대해서 설명하기로 한다.
여기서는 정지평면인 노면의 식은 이미 알고있는 것이며, 또 차량의 움직임은 미소한 것으로 가정하고, 노면상 점의 화상 상 움직임으로부터 차량(카메라)의 움직임 파라미터를 추정한다. 가령 차량이 고속으로 이동했다 하더라도, 촬상 시의 프레임 속도를 높임으로써 카메라의 움직임은 화상간에서 미소해지므로, 이 가정은 일반성을 잃게 하는 것은 아니다.
도 41은 본 수법을 설명하기 위한 모식도이다. 도 41에 나타내는 바와 같이, 카메라(2)의 움직임에 의해, 정지평면상 점(P)의 카메라 좌표계에서의 좌표값이, PE=(x, y, z)에서 PE'=(x', y', z')로 변화한 것으로 한다. 카메라(2)의 움직임은, 회전(R(wx, wy, wz))과 평행이동(T(Tx, Ty, Tz))으로 표시된다. 즉, 카메라(2)의 움직임은 다음과 같이 표시된다.
여기서 정지평면이 z=ax+by+c로 표시되는 것으로 하면, 화상좌표상에서의 점(P)의 이동((u, v) -> (u', v'))에 대하여, 다음의 식이 성립된다.
여기서, 화상좌표상의 대응점((u, v)(u', v'))과 정지평면식의 계수(a, b, c)를 이미 알고있는 것으로 하고, 상기 식을 미지 파라미터(wx, wy, wz, tx, ty, tz)에 대하여 정리하면, 다음과 같이 된다.
이를 AC=R로 하면, 차량의 움직임인 회전과 평행이동의 항을, 최소제곱법을 이용하여 구할 수 있다.
C=(AtA)-1AtR
(제 2 실시예)
도 14는 본 발명의 제 2 실시예에 관한 차량용 감시장치의 기본구성을 개념적으로 나타내는 블록도이다. 도 14에서 도 1과 공통된 구성요소에는 도 1과 동일 부호를 부여하며, 여기서는 그 상세한 설명을 생략한다. 제 1 실시예와 다른 점은, 공간모델 추정부(14A)가, 자기차량 움직임 추정부(13)에 의해 추정된 자기차량 움 직임정보를 이용하여, 비교적 단순한 공간모델을 추정하는 점이다.
일반적으로 차량이 주행하는 상황에서는, 노면 상에 건물이나 전신주, 간판, 나무 등 여러 가지가 존재한다. 이 때문에 카메라(11)에는 노면, 건물, 전신주, 간판, 나무, 나아가 하늘 등의 여러 가지 것들이 찍힌다. 여기서는 카메라(11)에 찍히는 여러 가지 것들을, 단순한 공간모델에 의해 가정하는 방법을 생각한다.
카메라에 찍히는 것은 여러 가지 있지만, 카메라를 차량의 후방 하향으로 설치한 경우, 거의 틀림없이 찍히는 것이 있다. 그것은 "차량이 주행해온 노면"이다. 그래서 우선 공간모델로서, 차량이 주행해온 노면을 모델링한 "노면모델"을 이용한다. 노면모델은 주행노면을 무한 연장시킨 것이므로, 기울기가 급격하게 변화하지 않는 한, 정확한 노면모델을 추정할 수 있다. 또 경사진 길이나 높낮이가 심한 길과 같이 노면의 기울기가 변화화는 경우라도, 자이로스코프와 같은 센서를 이용함으로써, 노면 기울기의 영향을 고려한 노면모델을 생성할 수 있다.
그런데 노면모델은, 반드시 카메라화상 상의 전 영역에서 이용할 수 있는 것은 아니다. 왜냐 하면, 카메라는 통상 거의 수평에 가까운 상태에서 설치되는 것으로 생각되므로, 이 경우 카메라화상 내의 지평선보다 높은 영역에는 노면이 찍히지 않기 때문이다. 물론 카메라화상의 전 영역에 노면이 찍히도록 카메라를 배치하는 것도 가능하지만, 이 경우 카메라로 감시할 수 있는 범위가 좁아져버리므로 실용적이지 않다.
그래서 본 실시예에서는 노면모델 이외에, 주행노면에 대하여 수직인 벽면을 공간모델로 가정한다. 이 공간모델을 "벽면모델"이라 부른다.
도 15는 벽면모델의 일례를 나타내는 도이다. 도 15에서 1은 차량, 2는 차량(1)에 설치된 카메라, 카메라(2)로부터 연장된 2 개의 직선으로 둘러싸인 영역(VA)은 카메라(2)의 촬영영역이다. 도 15에 나타내는 바와 같이, 차량(1)에서 거리(L)만큼 떨어진 뒤쪽에, 주행노면에 대하여 수직인 벽면을 가정한 벽면모델(MW)이, 가장 간단한 것이다. 이 벽면모델(MW)은 카메라(2)의 시야범위(VA) 중, 노면모델(MS)로 감당할 수 없는 모든 영역을 포함할만큼 충분히 큰 것으로 가정한다. 카메라(2)의 시야범위(VA) 중, 카메라(2)와 벽면모델(MW) 사이에 존재하는 영역이 노면모델(MS)의 영역이 된다. 때문에 차량(1)이 직진할 경우, 카메라(2)에 의해 촬영된 카메라화상은, 도시한 바와 같이 상부는 벽면모델(MW), 하부는 노면모델(MS)로 차지된다.
도 15와 같은 벽면모델을 이용할 경우, 벽면모델(MW)까지의 거리(L)를 어떻게 결정하는가가 문제가 된다. 도 16은 오른쪽 커브에서의 배경 플로우의 예를 나타내는 도이고, 각 화살표는 구해진 배경 플로우를 나타내며, 백선은 노면 상의 백선을 나타낸다. 또 MWA는 벽면모델(MW)에 의해 배경 플로우를 구한 영역, MSA는 노면모델(MS)에 의해 배경 플로우를 구한 영역이다. 도 16 중, (a)는 거리(L)가 충분히 길 때, (b)는 거리(L)가 충분히 짧을 때를 나타내며, (a)와 (b)의 비교에 의해, 거리(L)의 대소에 따른 배경 플로우의 변화를 알 수 있다.
즉, 도 16의 (a), (b)를 비교하면, 우선 벽면모델 영역(MWA)에서 배경 플로우의 크기가 크게 달라진 것을 알 수 있다. 그런데, 상술한 바와 같이 접근물검출 처리에 있어서 "노면에 접근물의 일부가 접해있다"라는 조건을 가했으므로, 노면모 델 영역(MSA)에서의 배경 플로우가 정확하게 구해져있으면, 벽면모델 영역(MSA)에서의 배경 플로우가 반드시 정확하게 구해져있을 필요는 없다.
또 노면모델과 벽면모델의 경계부근 영역(BA)에서의 배경 플로우가 도 16의 (a), (b)에서 상당히 달라진 것을 알 수 있다. 이 경계영역(BA)은 노면판정 시에 중요한 영역이므로, 따라서 벽면모델(MW)까지의 거리(L) 설정 여하에 따라서는 검출 정밀도의 열화를 초래해버릴 가능성이 있다.
그래서 별도의 벽면모델로서, 도 17과 같이 차량(1)의 양옆에 벽(MW1, MW2)이 있다는 식의 공간모델을 상정한다. 이는 높이가 무한한 터널을 주행하는 상황이라 할 수 있다. 카메라(2)의 시야범위(VA) 내에서 좌우 벽면모델(NW1, NW2) 사이에 존재하는 영역이 노면모델(MS)의 영역이 된다. 이 때문에 차량(1)이 직진할 경우, 카메라(2)로 촬영된 카메라화상은, 도시한 바와 같이 상부는 좌우의 벽면모델(MW1, MW2), 하부는 노면모델(MS)로 차지된다. 또 도 17에서는 설명을 간단히 하기 위해, 차량(1)이 직진하는 것으로 했지만, 차량이 커브를 주행할 때는, 벽면모델도 그 커브의 곡률에 맞추어 커브시키면 된다.
도 17에 나타내는 바와 같은 공간모델을, 카메라화상으로부터 실세계 3 차원 좌표계로의 변환식으로서 기술한 경우에 대하여 상술하기로 한다.
우선, 노면모델에 대하여 설명한다. 주행노면을 경사가 없는 평평한 노면이라고 가정하면, 노면모델은 실세계 3 차원 좌표계의 Xw-Yw 평면이 된다. 그래서 이 평면의 관계식
Zw=0
을 (식 1), (식 2)에 대입하면, 카메라화상 상의 점(P(Xi, Yi))은 다음 식에 의해 실세계 3 차원 좌표(Pw(Xw, Yw. Zw))로 변환할 수 있다.
(식 8)이, 노면모델에 있어서의 화상좌표계로부터 실세계 3 차원 좌표계로의 변환식이 된다.
다음으로, 벽면모델에 대하여 설명한다. 차량(1)이, 시각(t-1)에서 시각(t)까지 사이에 회전반경(R)에서 선회 주행했다 한다. 실세계 3 차원 좌표계의 원점을 시각(t)에서의 차량(1)의 후륜 중앙위치로 정하고, 회전중심을 (R, 0, 0)으로 한다. 단, 회전반경(R)의 부호는 음양 양쪽을 취하며, 차량(1)이 역시계방향일 때는 양, 시계방향일 때는 음인 것으로 한다.
이 때 벽면모델은 실세계 3 차원 좌표계에 있어서, Xw-Zw 평면에서의 단면 중심이 점(R, 0, 0)이며, Xw-Zw 평면에 수직인 반경
인 원통형상의 일부이므로, 다음 식으로 표시된다.
이 식과 (식 1), (식 2)를 이용함으로써, 카메라화상 상의 점(P(Xi, Yi))은 다음 식에 의해 실세계 3 차원 좌표(Pw(Xw, Yw. Zw))로 변환시킬 수 있다.
또한
1) 카메라화상에 찍힌 물체는 카메라(2)의 뒤에는 존재하지 않는다(Zc>0)
2) 공간모델은 노면보다 높은 위치에 있다(Yw≥0)
라는 조건을 가함으로써, (Pw(Xw, Yw. Zw))를 일의적으로 결정할 수 있다. (식 9)가 화상 좌표계로부터 실세계 3 차원 좌표계로의 변환식으로서 표현된 벽면모델이다.
여기서, 도 17과 같은 벽면모델을 이용할 경우, 차량의 좌우에 가정한 벽면(MW1, MW2) 사이의 거리(W)를 어떻게 결정하는가가 문제가 된다. 도 18은 오른쪽 커브에서의 배경 플로우 예를 나타내는 도이며, 각 화살표는 구해진 배경 플로우를 나타내고, 백선은 노면 상의 백선을 나타낸다. 또 MW1A는 카메라(2)에서 보아 왼쪽의 벽면모델(MW1)에 의해 배경 플로우를 구한 영역, MW2A는 카메라(2)에서 보아 오른쪽의 벽면모델(MW2)에 의해 배경 플로우를 구한 영역, MSA는 벽면모델(MS)에 의해 배경 플로우를 구한 영역이다. 도 17 중 (a)는 거리(W)가 충분히 작을 때, (b)는 거리(W)가 충분히 클 때를 나타내며, (a)와 (b)의 비교에 의해, 거리(W)의 대소에 따른 배경 플로우의 변화를 알 수 있다.
즉, 도 18의 (a), (b)를 비교하면, 좌우 벽면모델의 경계부근 영역(BA1)에서의 배경 플로우가 크게 달라진 것을 알 수 있다. 그러나 상술한 바와 같이, 접근물검출처리에 있어서 "노면에 접근물의 일부가 접해있다"라는 조건을 가했으므로, 벽면모델영역(MSA)에서의 배경 플로우가 정확하게 구해져있다면, 벽면모델영역(MW1A, MW1B)에서의 배경 플로우에 오차가 생겼다 하더라도, 접근물검출에는 큰 문제가 되지 않는다.
즉, 도 17에 나타낸 바와 같은 벽면모델에서는, 도 15에 나타낸 바와 같은 카메라 뒤쪽에 벽면을 가정한 경우와 달리, 벽면모델과 노면모델의 경계영역에서, 벽면 간격(W)의 대소에 의해, 배경 플로우에 그다지 큰 차는 생기지 않으므로, 접근물을 정밀도 좋게 검출할 수 있다. 예를 들어 벽면의 간격(W)은 10m 정도로 해두면 된다.
물론 벽면간 거리(W)를 레이저, 초음파, 적외선 또는 밀리파 등 각종 장애물검출센서를 이용하여 측정하거나, 양안시, 움직임 스테레오법을 이용하여 측정해도 된다. 또 노면의 텍스처정보를 이용하여 카메라화상으로부터 노면 이외의 영역을 추출하고, 그 영역을 벽면으로서 가정하는 것도 가능하다. 또한 공간모델의 일부만 을 거리측정 센서를 이용하여 측정하고, 그 이외 영역을, 여기서 설명한 바와 같이 평면이나 곡면으로 모델링 할 수도 있다. 또한 카메라화상이나 통신을 이용하여, 현재 차량이 주행하는 도로의 차선 수를 구하고, 그 결과를 이용하여 벽면간 거리(W)를 결정해도 된다. 카메라화상으로 차선 수를 결정하는 방법으로서는, 예를 들어 백선 검출을 행하고, 구해진 백선의 수로 차선 수를 결정하는 방법 등이 있다.
그리고 공간모델의 형상을, 카 내비게이션 시스템과 같은 GPS정보와 지도데이터, 또는 시계 등에 의한 시각데이터나, 차량의 와이퍼, 헤드라이트 등 작동데이터 등에 기초하여 바꾸는 것도 가능하다. 예를 들어, GPS정보와 지도데이터로부터, 차량이 현재 터널을 주행 중인 것을 알았을 때, 천정이 존재하는 식의 공간모델을 구해도 된다. 혹은 터널 입구 등에 장착된 DSRC 등의 통신수단에 의해, 차량이 터널주행 중이라는 정보를 얻을 수도 있다. 또 터널주행 중에는 통상 헤드라이트를 점등하므로, 시간데이터나 와이퍼데이터, 헤드라이트데이터와 연동시켜, 예를 들어 야간이 아니며(시간데이터로부터 추정), 비도 오지 않는(와이퍼데이터로부터 추정)데도, 헤드라이트를 점등시켰을 때, 터널주행 중인 것으로 판단하고 공간모델을 바꿀 수도 있다.
도 19는 본 실시예에 관한 자기차량 움직임 추정부(13), 공간모델 추정부(14A) 및 배경 플로우 추정부(15)의 동작을 나타내는 흐름도이다. 우선 시각(t-1)에서 시각(t)까지의 차량 좌우 양 바퀴의 회전펄스와 핸들 조향각을 측정함으로써, 시각(t)에서의 자기차량의 좌우 차륜속(Vl, Vr)과 전륜의 조향각(
)을 구한다(S61). 그리고 이와 같이 하여 구한 차륜속(Vl, Vr) 및 조향각(
)과 이미 알고있는 축간거리(I)로부터, 상술한 애커만모델을 이용하여 (식 7)에 따라 차량의 움직임 벡터(T)를 추정한다(S62).
여기서, 시각(t-1) 이전의 움직임 벡터는 현 시점에서 모두 구해져 있을 것이다. 그래서 지금까지의 움직임 벡터를 연결함으로써, 시각(t-1)까지의 자기차량 궤적을 구한다(S63). 도 20은 이와 같이 하여 구한 시각(t-1)까지 궤적의 예를 나타낸다. 도 20에 있어서 T는 현재의 움직임 벡터, TR은 지금까지의 움직임 벡터를 연결함으로써 구한 궤적을 나타낸다.
다음으로 공간모델을 추정한다(S64). 여기서는 상술한 도 17에 나타낸 바와 같은 노면모델과 벽면모델을 이용하기로 한다. 즉, 도 21에 나타내는 바와 같이 궤적(TR)을 포함하는 평면이 노면모델(MS)로서 구해지며, 궤적(TR)의 좌우에 길이 W/2만큼 떨어진 위치에 있는 노면모델(MS)에 수직인 벽면이, 벽면모델(MW1, MW2)로서 구해진다.
다음에, 배경 플로우를 추정한다(S65~S68). 우선 시각(t-1)에서의 카메라화상 상의 임의점(PreCi(PreXi, PreYi))을 실세계 3 차원 좌표(PreRi(PreXw, PreYw, PreZw))에 사영시킨다(S65). 도 22는 이 처리를 나타내는 도이다. 각도(
)는 카메라(2)의 화각이다. 상술한 바와 같이, (식 1), (식 2)에 나타낸 바와 같은 투시투영 변환식만으로는, 카메라화상 상의 점(PreCi)은 카메라(2)의 초점을 통하는 직선(LN) 상에 대응하는 것밖에 알 수 없으며, 실세계 좌표계의 한 점에 사영할 수 없다. 그러나 차량(1)은 추정된 공간모델 내를 주행한다고 가정하면, 이 직선(LN) 과 공간모델(도 22에서는 MW2)의 교차점으로서 점(PreRi)을 구할 수 있다.
다음, 현재 움직임 벡터(T)만큼 차량(1)을 움직임으로써 시각(t)에서의 자기차량 위치를 구하고, 좌표변환식(식 2)의 파라미터를 그 위치에 맞도록 갱신한다(S66). 그리고 그 카메라 위치에서 실세계 좌표(PreRi)가 카메라화상 상의 어느 위치에 찍히가를 계산한다. 실세계 좌표로부터 카메라화상 상에로의 변환은, (식 1)과 갱신된 (식 2)를 이용함으로써 실현할 수 있다. 이와 같이 하여 구한 카메라화상 상의 점을 NextCi(NextXi, NextYi)로 한다(S67). 도 23은 여기서의 처리를 모식적으로 나타내는 도이다.
여기서 구한 NextCi(NextXi, NextYi)는, 점(PreRi)이 시각(t-1)에서 시각(t)까지의 사이에 움직이지 않는, 즉 배경물체 상의 점인 것으로 가정한 경우의, 시각(t)에서의 카메라화상 상 위치를 나타낸다. 그래서 시각(t-1)에서의 카메라화상 상의 점(PreCi)이 배경의 일부인 것으로 가정했을 때의 배경 플로우(BFL)는, (NextXi-PreXi, NextYi-PreYi)로 구할 수 있다(S68). 이와 같은 처리를 카메라화상 상의 모든 점에 대하여 실행함으로써, 도 13에 나타낸 바와 같은 배경 플로우를 구할 수 있다.
본 실시예에 관한 접근물검출을 실행한 예를, 도 24~도 26에 나타낸다. 도 24는 차량 후방에 설치한 카메라로 촬상한 화상이다. 차량은 교차점을 우회전하려는 상태이며, 후방으로부터 흰 승용차(VC1)가 접근하고 있다. 여기서, 화상 상에서 움직이고 있는 물체는 흰 승용차(VC1) 뿐이며, 승용차(VC2, VC3)는 정지돼 있다.
여기서 상술한 제 1 종래예에 대하여 생각한다. 제 1 종래예에서는 우선 도 25의 (a)와 같이, 수평방향으로 영역(L)과 영역(R)을 분할하여 설정한다. 그리고 검출된 옵티컬 플로우 중, 영역(L)에서 왼쪽 또는 왼쪽 아랫방향으로 향한 것을, 영역(R)에서 오른쪽 또는 오른쪽 아랫방향으로 향한 것을 접근물로서 검출한다.
여기서 영역(L) 내에 영역(AR1, AR2)을 가정한다. 영역(AR1)에는 접근물인 승용차(VC1)가 포함되며, 영역(AR2)에는 정지돼있는 승용차(VC2)가 포함된다. 그러나 영역(AR1) 내의 승용차(VC1)는 화살표와 같이 오른쪽 아랫방향의 옵티컬 플로우를 가지므로, 접근물로서 검출되지는 않는다. 한편, 영역(AR2) 내의 승용차(VC2)는 당해 차량이 커브주행 중이므로, 화살표와 같이 왼쪽방향의 옵티컬 플로우를 갖기 때문에 접근물로서 검출돼버린다. 도 25의 (b)는 이와 같은 처리를 실시한 결과를 나타내며, 사각형으로 둘러싸인 영역이 접근물로서 검출된 영역이다. 이와 같이 제 1 종래예에서는 커브에서 접근물 검출이 제대로 되지 않는다.
한편, 본 실시예에 의하면 영역(AR1, AR2)에서의 배경 플로우는 도 26의 (a)의 화살표와 같이 구할 수 있다. 즉, 접근물인 승용차(VC1)를 표함하는 영역(AR1)에서, 옵티컬 플로우는 도 25의 (a)와 같이 오른쪽 아랫방향을 향하는데 반해, 배경 플로우는 도 26의 (a)와 같이 왼쪽을 향해, 전혀 다르다. 이로써 영역(AR1)은 접근물인 것으로 판별된다. 한편, 정지돼있는 승용차(VC2)를 포함하는 영역(AR2)에서, 옵티컬 플로우는 도 25의 (a)와 같이 왼쪽을 향하지만, 배경 플로우도 마찬가지로 도 26의 (a)와 같이 왼쪽을 향하므로, 매우 비슷하다. 이로써 영역(AR2)은 접근물이 아니라, 배경인 것으로 판별된다. 도 26의 (b)는 이와 같은 처리를 실행한 결과를 나타내며, 사각형으로 둘러싸인 영역이 접근물로서 검출된 영역이다. 이와 같이 본 발명에 의하면, 종래예와 달리 커브에서도 접근물을 확실하게 검출할 수 있다.
여기서, 노면모델을 이용한 차량용 감시장치는, 일특개 2000-74645호 공보나, 일특개 2001-266160호 공보에 기재돼있다. 그러나 이들 기술에서는 본원 발명과 같이 배경 플로우를 구하기 위해 노면모델을 이용하는 것은 아니다. 또 커브주행 시의 접근물 검출을 목적으로 하지 않으며, 본원 발명과는 과제가 상이하다.
구체적으로 설명하면, 우선 전자에서는, 감시영역 내의 타 차량에서 발생하는 옵티컬 플로우를 검출하고, 검출된 옵티컬 플로우를 이용하여 자기차량과 주변 타 차량과의 상대관계를 감시한다. 이 기술의 특징은, 처리시간을 단축하기 위해, 옵티컬 플로우를 검출하는 영역을 한정하는 것에 있으며, 이를 실현하기 위해 노면모델을 이용한다. 즉, 본 발명과 같이 공간모델을 접근물 플로우의 검출에 이용하는 것은 아니다. 실제로 이 기술에서는, 커브에서의 접근물 플로우 검출에 상술한 제 5 종래예에 나타난 가상 FOE를 이용하는 방법을 사용하므로, 제 5 종래예와 마찬가지 문제점을 안고 있다. 즉, 백선이 없는 커브에서는 정확한 접근물 검출을 실행할 수 없다.
또 후자는, 화면 상 각 점의 3 차원적인 움직임을 이용한다. 즉, 먼저 화면상의 각 점에 대하여, 화면상에서의 2 차원적인 움직임인 옵티컬 플로우를 구한다. 그리고 구해진 옵티컬 플로우와 차량움직임 정보를 기초로, 각 점의 실세계에서의 3 차원적인 움직임을 계산한다. 이 3 차원적인 움직임을 시간적으로 추적함으로써, 실제로 차량이 주행하는 공간의 공간모델을 추정한다. 이와 같이 하여 추정된 공간 모델 중에서, 노면의 움직임과 다른 것을 장애물로서 검출한다. 그러나 이 기술에서는 각 점의 움직임을 완전히 3 차원적으로 구하기 때문에, 매우 계산비용이 든다는 문제가 있어 실현이 어렵다.
<하드웨어 구성예>
도 27은 본 발명을 실현하기 위한 하드웨어 구성의 일례를 나타내는 도이다. 도 27에서, 예를 들어 차량 후방에 설치된 카메라(2)에 의해 촬영된 화상은 화상처리장치(20)에서 화상입력부(21)에 의해 디지털신호로 변환되어 프레임메모리(22)에 저장된다. 그리고 DSP(23)가, 프레임메모리(22)에 저장된 디지털화된 화상신호로부터 옵티컬 플로우를 검출한다. 검출된 옵티컬 플로우는, 버스(43)를 통해 마이크로컴퓨터(30)로 공급된다. 한편, 차속 센서(41)는 차량의 주행속도를 측정하며, 조향각 센서(42)는 차량의 주행 조향각을 측정한다. 측정결과를 나타내는 신호는, 버스(43)를 통해 마이크로컴퓨터(30)로 공급된다.
마이크로컴퓨터(30)는 CPU(31), 소정의 제어용프로그램이 저장된 ROM(32), 및 CPU(31)에 의한 연산결과를 기억하는 RAM(33)을 구비하며, 카메라(2)가 촬영한 화상 내에 접근물이 존재하는지 여부를 판정한다.
즉 CPU(31)는, 우선 차속 센서(41) 및 조향각 센서(42)로부터 공급된 주행속도신호와 조향각 신호로부터, 차량의 움직임을 추정한다. 다음으로, 추정한 추량의 움직임을 기초로, 차량이 지금까지 주행해온 궤적을 추정한다. RAM(33)에는 과거의 궤적정보가 저장돼있으므로, CPU(31)는 추정한 차량의 움직임을 RAM(33)에 저장된 과거의 궤적정보와 연결함으로써, 당해 시각까지의 궤적을 구한다. 이 새로운 궤적 정보는 RAM(33)에 저장된다.
그리고 CPU(31)는 RAM(33)에 저장된 궤적정보를 이용하여 공간모델을 추정하여, 배경 플로우를 구한다. 그리고 구해진 배경 플로우를 화상처리장치(20)로부터 공급된 옵티컬 플로우와 비교함으로써, 접근물의 옵티컬 플로우를 검출하고, 접근물을 검출한다.
(제 3 실시예)
도 28은 본 발명의 제 3 실시예에 관한 차량용 감시장치의 기본구성을 개념적으로 나타내는 블록도이다. 도 28에서 도 1과 공통되는 구성요소에는 도 1과 동일 부호를 부여하며, 여기서는 그 상세한 설명을 생략한다. 제 1 실시예와 다른 점은, 옵티컬 플로우 검출부(12A)가 배경 플로우 추정부(15)에 의해 추정된 배경 플로우를 이용하여 옵티컬 플로우를 검출하는 점이다. 이로써 옵티컬 플로우의 계산시간 삭감이나 정밀도 향상을 도모할 수 있다.
카메라화상 상의 물체의 움직임인 옵티컬 플로우(Vi)는, 다음 식과 같이 대상물체가 실제로 움직이고 있음에 의한 움직임(Vb)과, 카메라 자체의 움직임에 의한 상대적인 움직임(Vc)과의 합으로 표시된다.
Vi=Vb+Vc
여기서, 대상이 움직이지 않는, 즉 배경이라 하면, Vb는 0이며, Vc는 배경 플로우와 동등해진다. 또 대상이 이동 중인 물체라 하면, Vb는 대상물의 이동 벡터에 의존하지만, Vc는 배경 플로우와 거의 동등해진다. 이는, 대상물의 이동량이 그다지 크지 않을 경우, 그 옵티컬 플로우는 배경 플로우의 근방에 존재함을 나타낸 다. 그래서 옵티컬 플로우를 구할 때, 배경 플로우의 근방만을 검색함으로써 탐색영역을 좁혀, 계산시간의 삭감을 도모할 수 있다.
또 마찬가지 방법에 의해, 옵티컬 플로우의 검출 정밀도를 향상시킬 수도 있다. 이는 옵티컬 플로우 검출을 위해 계층화화상을 이용할 경우에 특히 효과적이다. 상술한 바와 같이, 계층화화상은 계산시간을 삭감하기 위해 이용되지만, 계층이 상위로 될수록 화상의 해상도는 낮아지기 때문에 템플레이트 매칭에서 오차가 발생할 가능성이 높아진다. 그리고 가령 상위계층에서 오차가 발생하여 잘못 검출해버리면, 그 오차는 하위계층에서는 흡수되지 않으며, 따라서 실제와는 다른 옵티컬 플로우를 검출해버린다.
도 29는 계층화화상에서의 블록매칭결과를 모식적으로 나타내는 도이다. 도 29에서 화상(1)은 원 화상인 화상(0)을 축소시켜 LPF 처리한 것, 화상(2)은 화상(1)을 더욱 축소시켜 LPF 처리한 것이다. 화상 내의 각 사각형은 매칭을 행한 블록을 나타내며, 그 안의 숫자는 당해 블록(G)과 템플레이트블록(F)과의 차분평가 함수의 값을 나타낸다. 즉, 블록의 크기를 m ×n, 템플레이트블록(F) 각 화소의 휘도를 f(i, j), 당해 블록(G) 각 화소의 휘도를 g(x, y, i, j)라 하면, 차분평가 함수(E(x, y))는 (식 10) 또는 (식 11)로 표시된다.
즉, 이 차분평가 함수(E(x, y))의 값이 최소인 것이 템플레이트블록(F)에 대응하는 블록이며, 그 화상에서의 옵티컬 플로우에 대응하는 것이다.
우선, 가장 해상도가 낮은 화상(2)에서 블록매칭을 행한다. 현재, 템플레이트블록(F)이 화상 오른쪽의 상방향으로 이동하고 있다 하면, 본래는 블록(G(1, -1))과의 정합성이 가장 높아져, 차분평가 함수(E(1, -1))가 최소로 돼야할 것이다. 그러나 계층화에 의한 분해능의 저하나, 텍스처, 개구 문제 등의 영향으로, 도 29와 같이 차분평가 함수(E(-1, 1))가 최소로 돼버렸다 하자. 그러면 화상(1)에서 화상(2)의 블록(G(-1, 1))에 대응하는 블록이 탐색영역으로 설정되고, 또 그 안에서 차분평가 함수값이 최소로 된 블록에 대응하는 블록이, 화상(2)에 있어서 탐색영역으로서 설정된다. 그러나 이 탐색영역 내에는 올바른 옵티컬 플로우에 대응하는 블록은 존재하지 않으며, 따라서 잘못된 옵티컬 플로우가 검출돼버린다.
그래서 본 실시예에서는, 가장 분해능이 높은 원 화상(0)에서의 블록매칭 시에, 배경 플로우 근방의 블록도 탐색영역에 추가시킴으로써 이 문제를 해결한다. 상술한 바와 같이 배경 플로우 근방에는 옵티컬 플로우가 존재할 가능성이 높다. 또 접근물 플로우 검출에는, 옵티컬 플로우와 배경 플로우의 상이함이 중요하지만, 바꾸어 말하면 배경 플로우 근방에 옵티컬 플로우가 존재하지 않을 때, 그것은 이동물체라 할 수 있다. 즉, 배경 플로우 근방을 탐색영역에 넣음으로써, 옵티컬 플로우가 배경인지 여부를 판별할 수 있다. 예를 들어 배경 플로우 근방에 차분평가 함수값을 최소로 하는 블록이 존재할 때, 이에 관한 옵티컬 플로우는 배경이지만, 차분평가 함수값이 배경 플로우 근방보다 작은 블록이 배경 플로우 근방 이외에 존재할 때, 그 옵티컬 플로우는 이동물체인 것으로 판별할 수 있다.
(제 4 실시예)
도 30은 본 발명의 제 4 실시예에 관한 차량용 감시장치의 기본구성을 개념적으로 나타내는 도이다. 도 30에서, 도 1과 공통된 구성요소에는 도 1과 동일 부호를 부여하며, 여기서는 그 상세한 설명을 생략한다. 제 1 실시예와 다른 점은, 배경 플로우 추정부(15)가 생략되며, 접근물 검출부(16A)가 대상물의 공간적인 움직임을 구해, 접근물을 검출하는 점이다. 접근물 검출부(16A)에서 3 차원 움직임 추정부(16c)는 옵티컬 플로우 검출부(12)에 의해 카메라화상으로부터 실제로 구해진 옵티컬 플로우(Vi)와, 자기차량 움직임 추정부(13)에 의해 구해진 당해 차량의 움직임 벡터(T)와, 공간모델 추정부(14)에 의해 추정된 공간모델을 이용하여, 옵티컬 플로우와 같은 평면적인 움직임이 아닌 대상물의 공간적인 움직임을 구한다.
도 31 및 도 32를 참조하여, 3 차원 움직임 추정부(16c)에서의 처리에 대하여 설명한다. 도 31은 시각(t-1)에서의 차량(1)과 공간모델의 관계를 모식적으로 나타내는 도이며, 도 17과 마찬가지의 공간모델(MS, MW1, MW2)이 상정된다. 단 공간모델은 실세계 3 차원 좌표계로 표현되는 것으로 한다. 또 카메라(2)가 촬영한 카메라화상도 함께 도시한다. 여기서 상술한 바와 같이 투시투영 변환식(식 1, 식 2) 및 공간모델(MS, MW1, MW2)을 이용함으로써, 카메라화상 상의 임의점(Ci)을 실세계 3 차원좌표 상에 투영한 점(Ri)을 구할 수 있다. 또한 T는 자기차량 움직임 추정부(13)에 의해 구해진, 시각(t-1)에서 시각(t)까지의 차량(1)의 움직임 벡터이다.
도 32는 시각(t)에서의 차량(1)과 공간모델과의 관계를 모식적으로 나타내는 도이다. 일반적으로 시각이 변하면 공간모델은 변화한다. 여기서 옵티컬 플로우 검출부(12)에 의해, 시각(t-1)의 점(Ci)이 시각(t)의 점(NextCi)에 대응하는 것을 알았다 하자. 이 때, 점(Ci)에 대한 점(Ri)과 마찬가지로, 시각(t)의 점(NextCi)을 실세계 3 차원 좌표 상에 투영한 점(NextRi)을 구할 수 있다. 따라서 점(Ri)이 시각(t)까지 움직인 벡터(VRi)는 다음 식과 같이 구할 수 있다.
VRi=NextRi-Ri
그런데 시각(t-1)에서 시각(t)까지의 차량(1) 움직임은 벡터(T)로서 구해져있으므로, 벡터(VRi-T)를 구함으로써, 카메라화상 상 점(Ci)의 실세계 3 차원 좌표 상에서의 움직임, 즉 공간 플로우를 구할 수 있다. 이 처리를 카메라화상 상의 모든 점에 대하여 실행함으로써, 카메라화상 상의 모든 점의 실세계 3 차원 좌표 상에서의 움직임을 구할 수 있다.
물론 공간모델은 제 1 실시예와 같이 각종 센서나 통신에 의해 구해도 되며, 다른 공간모델을 이용해도 상관없다.
접근물 플로우 검출부(16d)는 3 차원 움직임 추정부(16c)에 의해 구해진 카메라화상 상 각 점의 실세계 3 차원 좌표계에서의 움직임, 즉 공간 플로우를 기초로, 그 점이 자기차량으로 접근하는지 여부를 판단하다. 즉, 벡터(VRi-T)가 차량으로 향할 때, 점(Ci)은 접근물 플로우이고, 그렇지 않을 때, 점(Ci)은 접근물 플로 우가 아닌 것으로 판정된다.
또한 노이즈 제거부(16e)에 의해, 제 1 실시예에 관한 노이즈 제거부(16b)와 마찬가지 처리를 실행함으로써, 접근물을 검출할 수 있다.
여기까지의 설명에서, 공간모델은 실세계 3 차원 좌표계로 기술된 것으로 가 정했지만, 이 대신에 카메라 좌표계로 표현돼도 된다. 이 경우, 카메라화상 상의 점(Ci, NextCi)은 각각, 카메라 좌표계의 점(Ri, NextRi)에 대응한다. 카메라좌표계의 원점은 시각(t-1)에서 시각(t)까지 사이에 차량의 움직임 벡터(T)에 상당하는 만큼 움직이므로, 카메라화상 상 점(Ci)의 움직임(VRi)은 다음과 같이 구할 수 있다.
VRi=NextRi-Ri-T
이 벡터(VRi)가 원점을 향할 때, 점(Ci)은 접근물 플로우이며, 그렇지 않을 때, 점(Ci)은 접근물 플로우가 아닌 것으로 판정된다. 이 처리를 카메라화상 상의 모든 점에서 실행하고, 노이즈 제거부(16c)가 노이즈제거처리를 실행함으로써, 접근물을 검출할 수 있다.
<장애물센서와의 겸용>
본 발명은 화상정보를 이용하여 접근물 검출을 행하는 것이다. 때문에 레이저, 적외선, 밀리파 등 장애물센서를 이용하는 경우에 비하면, 접근물이 접근하는지 멀어지는지의 복잡한 검출이 가능하다. 그러나 장애물이 차량 근방에 존재할 경우는, 이와 같은 복잡한 정보보다, 장애물이 있는지 여부의 단순한 정보를 신속하고 정확하게 검출하는 것이 중요하다.
그래서 차량 근방의 영역에 대해서는 장애물센서에 의한 검출을 행하고, 그 이외의 광범위한 영역에 대하여, 본 발명에 관한 방법을 이용하여 장애물 검출을 행하도록 해도 된다. 이로써, 차량 주변의 감시를 고속으로, 또 정확하게 행하는 것이 가능해진다.
도 33은 장애물센서의 설치예를 나타내는 도이다. 도 33 중 (a)에서 레이저, 적외선, 밀리파 등을 이용한 장애물센서(51)는, 차량(1)의 범퍼나 엠블렘 등에 설치된다. 또 (b)에서는 가장 접촉사고의 가능성이 높은 차량(1)의 네 구석에 장애물센서(52)를 설치한다. 장애물센서(52)를 설치하는 위치는 범퍼의 위나 아래, 또는 범퍼나 차체 자체에 조립시켜도 된다.
또 장애물센서는 강우 등 기상에 의한 영향을 크게 받으므로, 방향지시기의 동작정보 등에서 강우를 인식했을 때, 장애물센서의 이용을 중지하고, 본 발명에 관한 방법을 이용하도록 해도 된다. 이로써, 검출 정밀도를 향상시킬 수 있다.
또한 본 발명에 관한 방법에 의해 접근물이 있는 것으로 검출된 영역에 대하여, 재차 장애물센서에 의해 검출을 행하도록 해도 된다. 이로써, 접근물의 검출 정밀도가 향상하며, 잘못된 경보가 발생하지 않도록 할 수 있다.
그리고 장애물센서에 의한 검출의 결과, 장애물이 있다고 판단된 영역에 대해서만, 본 발명에 관한 방법으로 그것이 접근물인지의 여부를 판정하도록 해도 된다. 이로써 처리속도 향상을 도모하는 것이 가능해진다.
여기서, 본 발명의 감시장치 각 수단의 기능 전부 또는 일부를 전용 하드웨어를 이용하여 실현해도 되며, 컴퓨터의 프로그램에 의해 소프트웨어적으로 실현해 도 상관없다.