KR102227316B1 - 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 방법 및 시스템 - Google Patents

차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR102227316B1
KR102227316B1 KR1020197015628A KR20197015628A KR102227316B1 KR 102227316 B1 KR102227316 B1 KR 102227316B1 KR 1020197015628 A KR1020197015628 A KR 1020197015628A KR 20197015628 A KR20197015628 A KR 20197015628A KR 102227316 B1 KR102227316 B1 KR 102227316B1
Authority
KR
South Korea
Prior art keywords
vehicle
turn
virtual camera
expected
angles
Prior art date
Application number
KR1020197015628A
Other languages
English (en)
Other versions
KR20190077482A (ko
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 웨이모 엘엘씨
Publication of KR20190077482A publication Critical patent/KR20190077482A/ko
Application granted granted Critical
Publication of KR102227316B1 publication Critical patent/KR102227316B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/64Computer-aided capture of images, e.g. transfer from script file into camera, check of taken image quality, advice or proposal for image composition or decision on when to take image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R1/00Optical viewing arrangements; Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R1/00Optical viewing arrangements; Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • B60R1/20Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • B60R1/22Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles for viewing an area outside the vehicle, e.g. the exterior of the vehicle
    • B60R1/23Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles for viewing an area outside the vehicle, e.g. the exterior of the vehicle with a predetermined field of view
    • B60R1/27Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles for viewing an area outside the vehicle, e.g. the exterior of the vehicle with a predetermined field of view providing all-round vision, e.g. using omnidirectional cameras
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R1/00Optical viewing arrangements; Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • B60R1/20Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • B60R1/22Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles for viewing an area outside the vehicle, e.g. the exterior of the vehicle
    • B60R1/28Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles for viewing an area outside the vehicle, e.g. the exterior of the vehicle with an adjustable field of view
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0094Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots involving pointing a payload, e.g. camera, weapon, sensor, towards a fixed or moving target
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/69Control of means for changing angle of the field of view, e.g. optical zoom objectives or electronic zooming
    • H04N5/23222
    • H04N5/23293
    • H04N5/23296
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/30Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing
    • B60R2300/302Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing combining image information with GPS information or vehicle data, e.g. vehicle speed, gyro, steering angle data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/60Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by monitoring and displaying vehicle exterior scenes from a transformed perspective
    • B60R2300/602Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by monitoring and displaying vehicle exterior scenes from a transformed perspective with an adjustable viewpoint
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/60Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by monitoring and displaying vehicle exterior scenes from a transformed perspective
    • B60R2300/602Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by monitoring and displaying vehicle exterior scenes from a transformed perspective with an adjustable viewpoint
    • B60R2300/605Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by monitoring and displaying vehicle exterior scenes from a transformed perspective with an adjustable viewpoint the adjustment being automatic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/80Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the intended use of the viewing arrangement
    • B60R2300/8086Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the intended use of the viewing arrangement for vehicle path indication

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)
  • Processing Or Creating Images (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Image Processing (AREA)

Abstract

본 개시내용의 양태들은 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하는 것에 관한 것이다. 하나 이상의 컴퓨팅 디바이스는 턴을 하기 전의 차량의 원래 헤딩 및 차량의 현재 헤딩을 수신할 수 있다. 상기 하나 이상의 컴퓨팅 디바이스는, 차량의 원래 헤딩 및 차량의 현재 헤딩에 기초하여, 차량이 수행하고 있는 턴의 각도를 결정할 수 있고 상기 하나 이상의 컴퓨팅 디바이스는 카메라 회전 각도를 결정하고 가상 카메라를 카메라 회전 각도만큼 회전시킴으로써 차량에 대한 가상 카메라의 방위를 업데이트된 방위로 조정하고 가상 카메라의 업데이트된 방위에 대응하는 비디오를 생성할 수 있다. 상기 비디오는 상기 하나 이상의 컴퓨팅 디바이스에 의해 디스플레이 상에 디스플레이될 수 있다.

Description

차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 방법 및 시스템
관련 출원에 대한 상호 참조:
본 출원은 2016년 11월 30일자로 출원된 미국 특허 출원 제15/364,914호의 출원일의 이익을 주장하며, 그 개시내용은 본 명세서에 참고로 포함된다.
인간 운전자를 필요로 하지 않는 차량들과 같은 자율 차량들은 하나의 위치로부터 다른 위치로의 승객들 또는 물품들의 운송을 돕기 위해 이용될 수 있다. 그러한 차량들은 승객들 또는 원격 조작자가 픽업 또는 목적지 위치와 같은 어떤 초기 입력을 제공할 수 있는 완전 자율 모드에서 동작할 수 있고, 차량은 자신을 해당 위치로 조종해 간다.
그러한 차량들은 전형적으로 주변의 물체들을 검출하기 위해 다양한 유형의 센서들을 구비한다. 예를 들어, 자율 차량들은 레이저, 소나, 레이더, 카메라, 및 차량의 주변으로부터 데이터를 스캔하고 기록 하는 다른 디바이스들을 포함할 수 있다. 이러한 디바이스들 중 하나 이상으로부터의 센서 데이터는 물체들 및 그들 각각의 특성들(위치, 형상, 헤딩, 속도 등)을 검출하는 데 사용될 수 있다. 이러한 특성들은 차량의 탑승자들에게, 차량의 근처에서 검출된 물체들의 시각적 지시뿐만 아니라 그 물체들이 미래에 어떤 짧은 기간 동안 무엇을 할 가능성이 있는지를 제공하는 데 사용될 수 있다.
차량의 환경에 관한 정보를 차량의 탑승자들에게 제공하기 위해, 차량 내의 디스플레이는 디폴트 위치에서 차량에 대해 고정된 가상 카메라의 관점에서 가상 카메라 시스템에 의해 생성된 비디오를 제시할 수 있다. 비디오는 차량의 예상된 궤적 및 차량의 주변의 일부를 포함하는 가상 카메라의 위치에 대응하는 설정된 시야 내의 이미지를 포함할 수 있다. 차량이 턴을 수행할 때, 가상 카메라는 디폴트 위치에 남아 있을 것이고, 따라서 비디오는 계속해서 설정된 시야 내에 위치한 이미지를 제공할 것이다.
동시에, 그러한 정보는 이러한 물체들을 피하거나, 불가피한 충돌의 경우에 손상을 최소화하기 위해 차량을 제어하는 데 사용될 수 있다. 따라서, 검출, 식별, 및 예측은 자율 차량의 안전한 운행을 위한 중요한 기능들이다.
이 기술은 일반적으로 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하는 것에 관한 것이다. 하나 이상의 컴퓨팅 디바이스는 턴을 하기 전의 차량의 원래 헤딩 및 차량의 현재 헤딩을 수신할 수 있다. 하나 이상의 컴퓨팅 디바이스는, 차량의 원래 헤딩 및 차량의 현재 헤딩에 기초하여, 차량이 수행하고 있는 턴의 각도를 결정할 수 있다. 하나 이상의 컴퓨팅 디바이스는 카메라 회전 각도를 결정하고 가상 카메라를 카메라 회전 각도만큼 회전시킴으로써 차량에 대한 가상 카메라의 방위를 업데이트된 방위로 조정할 수 있다. 가상 카메라의 업데이트된 방위에 대응하는 비디오가 하나 이상의 컴퓨팅 디바이스에 의해 생성되어 디스플레이 상에 디스플레이될 수 있다.
차량의 원래 헤딩 및 차량의 현재 헤딩은 차량의 위치확인 시스템으로부터 수신될 수 있다.
턴의 각도를 결정하는 것은 차량의 현재 헤딩으로부터의 차량의 원래 헤딩 사이의 차이를 계산함으로써 결정될 수 있다.
카메라 회전 각도는 턴의 각도에 기초할 수 있고, 턴의 각도를 스쿼싱 함수에 입력하고 출력된 각도를 수신함으로써 계산되고, 출력된 각도는 카메라 회전 각도이다.
차량이 턴을 하고 있는 동안 가상 카메라의 방위가 조정될 수 있고 비디오가 디스플레이될 수 있다.
차량의 현재 헤딩은 예상된 헤딩일 수 있고 가상 카메라의 방위는 차량이 턴을 수행하기 전에 업데이트될 수 있다.
카메라 회전 각도는 턴의 각도를 스쿼싱 함수에 입력하고 출력된 각도를 수신함으로써 계산될 수 있고 출력된 각도는 카메라 회전 각도일 수 있다.
카메라 회전 각도는 각각의 턴의 각도에 대한 미리 결정된 카메라 회전 각도들을 포함하는 테이블에 액세스함으로써 결정될 수 있다.
차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 시스템은 턴을 하기 전의 차량의 원래 헤딩 및 차량의 현재 헤딩을 수신하고, 차량의 원래 헤딩 및 차량의 현재 헤딩에 기초하여, 차량이 수행하고 있는 턴의 각도를 결정하도록 구성되는 하나 이상의 프로세서를 포함할 수 있다. 하나 이상의 프로세서는 카메라 회전 각도를 결정하고, 가상 카메라를 카메라 회전 각도만큼 회전시킴으로써 차량에 대한 가상 카메라의 방위를 업데이트된 방위로 조정하고, 가상 카메라의 업데이트된 방위에 대응하는 비디오를 생성하고, 비디오를 디스플레이하도록 추가로 구성될 수 있다.
명령어들이 저장되는 비일시적 컴퓨터 판독가능 매체로서, 상기 명령어들은, 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하는 방법을 수행하게 할 수 있다. 이 방법은 턴을 하기 전의 차량의 원래 헤딩 및 차량의 현재 헤딩을 수신하는 단계, 차량의 원래 헤딩 및 차량의 현재 헤딩에 기초하여, 차량이 수행하고 있는 턴의 각도를 결정하는 단계, 카메라 회전 각도를 결정하는 단계, 가상 카메라를 카메라 회전 각도만큼 회전시킴으로써 차량에 대한 가상 카메라의 방위를 업데이트된 방위로 조정하는 단계, 가상 카메라의 업데이트된 방위에 대응하는 비디오를 생성하는 단계, 및 디스플레이 상에 상기 비디오를 디스플레이하는 단계를 포함할 수 있다.
도 1은 본 개시내용의 양태들에 따른 예시적인 차량의 기능 다이어그램이다.
도 2a 내지 도 2d는 본 개시내용의 양태들에 따른 차량의 예시적인 외부 뷰들이다.
도 3은 본 개시내용의 양태들에 따른 시스템의 그림 다이어그램이다.
도 4는 본 개시내용의 양태들에 따른 도 3의 시스템의 기능 다이어그램이다.
도 5a 및 도 5b는 본 개시내용의 양태들에 따른 디폴트 위치에 위치된 가상 카메라의 예시들이다.
도 6은 본 개시내용의 양태들에 따른 가상 카메라의 시야의 예시이다.
도 7은 본 개시내용의 양태들에 따른 회전하는 가상 카메라의 시야의 예시이다.
도 8은 본 개시내용의 양태들에 따른 차량의 예상된 궤적에 기초한 가상 카메라의 시야의 예시이다.
도 9 내지 도 12는 본 개시내용의 양태들에 따른, 차량이 턴을 통해 진행함에 따라 변화하는 가상 카메라의 시야의 예시들이다.
도 13은 본 개시내용의 양태들에 따른 스쿼싱 함수의 입력들 및 출력들을 도시하는 차트이다.
도 14 및 도 15는 본 개시내용의 양태들에 따른 차량이 턴할 것으로 예상되는 방향과 반대 방향으로 회전하는 가상 카메라의 시야의 예시들이다.
도 16은 본 개시내용의 양태들에 따른 차량 위에 위치된 가상 카메라의 시야의 예시이다.
도 17은 본 개시내용의 양태들에 따른 흐름 다이어그램이다.
개관
본 기술은 일반적으로 차량의 환경에 관한 정보를 승객들에게 제공하는 것에 관한 것이다. 이는, 예를 들어, 차량이 턴을 하고 있을 때 가상 카메라의 위치 및 방위를 조정하는 것을 포함할 수 있다. 예를 들어, 차량이 턴을 수행함에 따라 가상 카메라의 위치는 차량의 예상된 헤딩에 대응하는 조정된 시야 내의 비디오를 제시하기 위해 차량 주위로 회전될 수 있다. 이와 관련하여, 차량 내의 컴퓨팅 디바이스는 차량의 주변 및 위치에 대응하는 정보를 가상 카메라 시스템에 송신할 수 있다. 가상 카메라 시스템은, 수신된 정보에 기초하여, 수신된 데이터를 이용하여 가상 카메라의 관점에서 비디오를 생성할 수 있다. 비디오는 차량의 예상된 궤적과 검출된 물체들을 차량이 주행하고 있는 루트에 대응하는 맵 상에 오버레이함으로써 생성될 수 있다.
가상 카메라가 차량 주위로 회전하는 거리는 차량이 수행하고 있는 턴의 각도에 기초할 수 있다. 가상 카메라 시스템은 차량이 턴 전에 주행하고 있던 헤딩에 대해, 차량이 수행하고 있는 턴의 각도를 회전 테이블에 입력하고 가상 카메라가 회전될 수 있는 대응하는 카메라 회전 각도를 출력할 수 있다. 가상 카메라 시스템은 차량이 턴을 통해 진행함에 따라 카메라 회전 각도를 계속적으로 업데이트할 수 있다.
가상 카메라 시스템은 차량의 예상된 궤적에 기초하여 차량의 다가오는 턴의 예상된 각도를 결정하고, 차량이 턴을 하기 전에 미리 결정된 거리에서 가상 카메라를 회전시키기 시작할 수 있다. 예를 들어, 가상 카메라 시스템은 다가오는 턴으로부터의 차량의 거리 및 차량이 수행할 턴의 예상된 각도들을 결정할 수 있다. 예상된 턴이 미리 결정된 거리 이하에 있는 것으로 결정되면, 가상 카메라 시스템은 턴의 예상된 각도들에 대응하는 카메라 회전 각도들을 통해 가상 카메라를 회전시키기 시작할 수 있다.
가상 카메라는 차량이 정지되어 있거나 정지할 것으로 예상될 때 정지 상태로 유지될 수 있다. 예를 들어, 가상 카메라는 차량의 예상된 궤적이 차량이 정지 신호등을 통과할 것으로 예상하는 것을 결정할 수 있다. 그에 따라, 자동차가 정지 신호등을 통해 주행할 때까지 가상 카메라는 회전하지 않을 수 있다.
사소한 오버스티어링 정정들에 의해 야기되는 것들과 같은 사소한 카메라 회전들을 최소화하고, 더 큰 카메라 회전들을 평활화하기 위해, 가상 카메라 시스템은 스쿼싱 함수를 사용할 수 있다. 예를 들어, 차량이 수행하고 있는 턴의 각도가 스쿼싱 함수에 입력될 수 있고, 턴의 각도들과 동일하거나 그보다 더 완만한(gradual) 카메라 각도 회전 값이 출력될 수 있다.
비보호 턴들에서, 가상 카메라 시스템은 비보호 턴들에서 다가오는 교통에 대응하는 이미지를 생성하기 위해 가상 카메라를 회전시킬 수 있다. 예를 들어, 가상 카메라는 차량이 터닝하려고 시도하고 있는 도로 상에서 주행중인 다른 차량들에 대응하는 이미지를 생성하기 위해 차량의 예상된 궤적의 반대 방향으로 회전할 수 있다.
가상 카메라의 높이 및 피치는 또한 차량의 주변을 더 또는 덜 캡처하도록 조정될 수 있다. 예를 들어, 차량이 교차로에서 정지되어 있을 때, 가상 카메라는 차량 위에 위치될 수 있고, 가상 카메라의 피치는 곧장 아래로 차량을 보도록 조정될 수 있다. 그 후 가상 카메라는 차량의 모든 측면들에서의 차량의 주변의 이미지를 포함하는 비디오를 생성할 수 있다.
위에서 설명된 특징들은 자율 차량과 같은 차량이 차량의 궤적 및 주변의 비디오를 그의 승객에게 제공하는 것을 가능하게 할 수 있다. 비디오를 생성하는 가상 카메라를 회전시킴으로써, 승객들에게는 차량의 예상된 궤적 또는 그 예상된 궤적을 따라 추가로 위치하는 주변에 관한 그리고 그들이 차량을 수동으로 운전중일 경우 보일 것으로 기대하는 주변과 일치하는 정보가 제공된다. 또한, 차량의 궤적 및 주변의 비디오는 차량의 외부에 위치하는 개인들 또는 시스템들에게 제공되어 그들에게 차량을 원격으로 모니터링 및/또는 제어하기 위한 비디오를 제공할 수 있다.
예시적인 시스템들
도 1에 도시된 바와 같이, 본 개시내용의 일 양태에 따른 차량(100)은 다양한 컴포넌트들을 포함한다. 본 개시내용의 특정 양태들은 특정 유형들의 차량과 연계하여 특히 유용하지만, 차량은 자동차들, 트럭들, 오토바이들, 버스들, 레크리에이션 차량 등을 포함하지만 이에 제한되지 않는 임의 유형의 차량일 수 있다. 차량은 하나 이상의 프로세서(120), 메모리(130), 및 범용 컴퓨팅 디바이스들에 전형적으로 존재하는 다른 컴포넌트들을 포함하는 컴퓨팅 디바이스(110)와 같은 하나 이상의 컴퓨팅 디바이스를 가질 수 있다.
메모리(130)는 프로세서(120)에 의해 실행되거나 또는 달리 이용될 수 있는 명령어들(132) 및 데이터(134)를 포함하여, 하나 이상의 프로세서(120)에 의해 액세스 가능한 정보를 저장한다. 메모리(130)는 컴퓨팅 디바이스 판독가능 매체, 또는 하드 드라이브, 메모리 카드, ROM, RAM, DVD 또는 다른 광 디스크들과 같은 전자 디바이스의 도움으로 판독될 수 있는 데이터를 저장하는 다른 매체뿐만 아니라 다른 기입 가능 및 판독 전용 메모리들을 포함하여, 프로세서에 의해 액세스 가능한 정보를 저장할 수 있는 임의의 유형의 것일 수 있다. 시스템들 및 방법들은 전술한 것의 상이한 조합들을 포함할 수 있고, 그에 의해 명령어들 및 데이터의 상이한 부분들이 상이한 유형들의 매체상에 저장된다.
명령어들(132)은 프로세서에 의해 (기계 코드와 같이) 직접적으로 또는 (스크립트들과 같이) 간접적으로 실행될 명령어들의 임의의 세트일 수 있다. 예를 들어, 명령어들은 컴퓨팅 디바이스 판독가능 매체상에 컴퓨팅 디바이스 코드로서 저장될 수 있다. 그와 관련하여, 용어들 "명령어들" 및 "프로그램들"은 본 명세서에서 교체가능하게 이용될 수 있다. 명령어들은 프로세서에 의한 직접 처리를 위해 오브젝트 코드 포맷으로, 또는 요구 시에 해석되거나 또는 미리 컴파일링되는 독립 소스 코드 모듈들의 스크립트들 또는 모음들을 포함하는 임의의 다른 컴퓨팅 디바이스 언어로 저장될 수 있다. 기능들, 방법들, 및 명령어들의 루틴들이 아래에서 더 상세히 설명된다.
데이터(134)는 명령어들(132)에 따라 프로세서(120)에 의해 검색되거나, 저장되거나 수정될 수 있다. 예를 들어, 청구되는 주제가 임의의 특정한 데이터 구조에 의해 제한되지는 않지만, 데이터는 컴퓨팅 디바이스 레지스터들에, 관계형 데이터베이스에 복수의 상이한 필드 및 레코드를 갖는 테이블, XML 문서들 또는 플랫 파일(flat file)들로서 저장될 수 있다. 데이터는 또한 임의의 컴퓨팅 디바이스 판독가능 포맷으로 포맷팅될 수 있다.
하나 이상의 프로세서(120)는 상업적으로 이용가능한 CPU들과 같은 임의의 종래의 프로세서들일 수 있다. 대안적으로, 하나 이상의 프로세서는 ASIC 또는 다른 하드웨어 기반 프로세서와 같은 전용 디바이스일 수 있다. 도 1은 컴퓨팅 디바이스(110)의 프로세서, 메모리, 및 다른 요소들을 동일한 블록 내에 있는 것으로 기능적으로 예시하지만, 본 기술분야의 통상의 기술자들은 프로세서, 컴퓨팅 디바이스, 또는 메모리는 동일한 물리적 하우징 내에 넣어질 수 있거나 그렇지 않을 수 있는 다수의 프로세서, 컴퓨팅 디바이스, 또는 메모리를 실제로 포함할 수 있다는 것을 이해할 것이다. 예를 들어, 메모리는 컴퓨팅 디바이스(110)의 것과 상이한 하우징에 위치한 하드 드라이브 또는 다른 스토리지 매체일 수 있다. 따라서, 프로세서 또는 컴퓨팅 디바이스에 대한 참조들은, 병렬로 동작할 수 있거나 그렇지 않을 수 있는 프로세서들 또는 컴퓨팅 디바이스들 또는 메모리들의 모음에 대한 참조들을 포함하는 것으로 이해될 것이다.
컴퓨팅 디바이스(110)는 위에서 설명된 프로세서 및 메모리와 같은 컴퓨팅 디바이스뿐만 아니라 사용자 입력(150)(예를 들어, 마우스, 키보드, 터치스크린 및/또는 마이크로폰) 및 다양한 전자 디스플레이러한(예를 들어, 스크린을 가지는 모니터 또는 정보를 디스플레이하도록 동작가능한 임의의 다른 전자 디바이스)과 연계하여 보통 사용되는 모든 컴포넌트들을 포함할 수 있다. 이 예에서, 차량은 정보 또는 시청각 경험들을 제공하기 위해 내부 전자 디스플레이(152)뿐만 아니라 하나 이상의 스피커(154)를 포함한다. 이와 관련하여, 내부 전자 디스플레이(152)는 차량(100)의 객실 내에 위치할 수 있고 컴퓨팅 디바이스(110)에 의해 차량(100) 내의 승객들에게 정보를 제공하는 데 사용될 수 있다.
컴퓨팅 디바이스(110)는 또한 아래에 상세히 설명되는 클라이언트 컴퓨팅 디바이스들 및 서버 컴퓨팅 디바이스들과 같은, 다른 컴퓨팅 디바이스들과의 통신을 용이하게 하기 위해 하나 이상의 무선 네트워크 연결(156)을 포함할 수 있다. 무선 네트워크 연결들은 블루투스, 블루투스 저 에너지(LE), 셀룰러 연결들과 같은 단거리 통신 프로토콜들뿐만 아니라 인터넷, 월드 와이드 웹(World Wide Web), 인트라넷들, 가상 사설 네트워크들, 광역 네트워크들, 로컬 네트워크들, 하나 이상의 회사 전용의 통신 프로토콜들을 이용하는 사설 네트워크들, 이더넷, WiFi 및 HTTP, 및 전술한 것들의 다양한 조합을 포함하는 다양한 구성 및 프로토콜을 포함할 수 있다.
일례에서, 컴퓨팅 디바이스(110)는 차량(100)에 통합되는 자율 주행 컴퓨팅 시스템일 수 있다. 자율 주행 컴퓨팅 시스템은 차량의 다양한 컴포넌트와 통신할 수 있다. 예를 들어, 도 1로 돌아가서, 컴퓨팅 디바이스(110)는 메모리(130)의 명령어들(132)에 따라 차량(100)의 이동, 가속, 속도, 동작 등을 제어하기 위해 감속 시스템(160), 가속 시스템(162), 조향 시스템(164), 시그널링 시스템(166), 내비게이션 시스템(168), 위치확인 시스템(170), 인식 시스템(172), 및 가상 카메라 시스템(176)과 같은 차량(100)의 다양한 시스템들과 통신할 수 있다. 다시금, 이러한 시스템들이 컴퓨팅 디바이스(110) 외부에 있는 것으로 도시되지만, 실제로는, 이러한 시스템들은 차량(100)을 제어하기 위한 자율 주행 컴퓨팅 시스템으로서 다시금 컴퓨팅 디바이스(110)에 또한 통합될 수 있다.
예로서, 컴퓨팅 디바이스(110)는 차량의 속도 및 가속을 제어하기 위해 감속 시스템(160) 및 가속 시스템(162)과 상호작용할 수 있다. 예를 들어, 가속 시스템(162)은 특정 레이트로 가속하기 위해 엔진(174)에 신호들을 제공할 수 있다. 유사하게, 조향 시스템(164)은 차량(100)의 방향을 제어하기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다. 예를 들어, 자동차 또는 트럭과 같은 차량(100)이 도로상에서 이용하도록 구성되는 경우, 조향 시스템은 차량을 턴시키기 위해 바퀴들의 각도를 제어하는 컴포넌트들을 포함할 수 있다. 시그널링 시스템(166)은, 예를 들어 필요할 때 방향 지시등 또는 브레이크 등을 점등함으로써 차량의 의도를 다른 운전자들 또는 차량들에 시그널링하기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다.
내비게이션 시스템(168)은 위치로의 루트를 결정하고 이를 따르기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다. 이와 관련하여, 내비게이션 시스템(168) 및/또는 데이터(134)는 상세한 맵 정보, 예를 들어, 도로들의 형상 및 고도, 차선 라인들, 교차로들, 횡단보도들, 속도 제한들, 교통 신호들, 건물들, 표지들, 실시간 교통 정보, 식생, 또는 다른 그러한 물체들 및 정보를 식별하는 매우 상세한 맵들을 저장할 수 있다. 다시 말해서, 이 상세한 맵 정보는 도로들을 포함하는 차량의 예상 환경의 기하학적 구조뿐만 아니라 해당 도로들에 대한 속도 규정(법적 속도 제한)을 정의할 수 있다.
위치확인 시스템(170)은 맵상에서의 또는 지구상에서의 차량의 상대적 또는 절대적 위치를 결정하기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다. 예를 들어, 위치확인 시스템(170)은 디바이스의 위도, 경도 및/또는 고도 위치를 결정하기 위한 GPS 수신기를 포함할 수 있다. 레이저 기반 위치표시(localization) 시스템들, 관성 보조 GPS, 또는 카메라 기반 위치표시와 같은 다른 위치 시스템들이 또한 차량의 위치를 식별하는 데 사용될 수 있다. 차량의 위치는 절대적 지리적 위치, 예컨대 위도, 경도, 및 고도뿐만 아니라, 상대적 위치 정보, 예컨대 절대적 지리적 위치보다 종종 더 적은 잡음으로 결정될 수 있는 자신 바로 주위의 다른 자동차들에 상대적인 위치를 포함할 수 있다.
위치확인 시스템(170)은 차량의 방향 및 속도 또는 그것에 대한 변화들을 결정하기 위해 가속도계, 자이로스코프 또는 다른 방향/속도 검출 디바이스와 같은, 컴퓨팅 디바이스(110)와 통신 상태에 있는 다른 디바이스들을 또한 포함할 수 있다. 단지 예로서, 가속 디바이스는 중력의 방향 또는 이에 수직인 평면에 대한 그 피치(pitch), 요(yaw) 또는 롤(roll)(또는 그것에 대한 변화들)을 결정할 수 있다. 이 디바이스는 속도의 증가 또는 감소 및 그러한 변화들의 방향을 또한 추적할 수 있다. 본 명세서에 제시된 바와 같은 디바이스의 위치 및 방위 데이터의 제공은 컴퓨팅 디바이스(110), 다른 컴퓨팅 디바이스들 및 전술한 것의 조합들에 자동으로 제공될 수 있다.
인식 시스템(172)은 또한 다른 차량들, 도로의 장애물들, 교통 신호들, 표지들, 나무들 등과 같은 차량의 외부에 있는 물체들을 검출하기 위한 하나 이상의 컴포넌트를 포함한다. 예를 들어, 인식 시스템(172)은 레이저, 소나, 레이더, 카메라들 및/또는 컴퓨팅 디바이스들(110)에 의해 처리될 수 있는 데이터를 기록하는 임의의 다른 검출 디바이스들을 포함할 수 있다. 차량이 자동차와 같은 소형 승객 차량인 경우에, 자동차는 루프 또는 다른 편리한 위치에 장착된 레이저 또는 다른 센서들을 포함할 수 있다. 예를 들어, 차량의 인식 시스템은 LIDAR, 소나, 레이더, 카메라 등과 같은 다양한 센서들을 사용하여 물체들 및 위치, 방위, 크기, 형상, 유형, 방향 및 이동 속도 등과 같은 그들의 특성들을 검출할 수 있다. 센서들 및/또는 전술한 특성들로부터의 원시 데이터는 컴퓨팅 디바이스들(110)에 의한 처리를 위해 기술적 함수 또는 벡터로 정량화되거나 배열될 수 있다. 아래에 더 상세히 논의된 바와 같이, 컴퓨팅 디바이스들(110)는 위치확인 시스템(170)을 사용하여 차량의 위치를 결정하고 인식 시스템(172)을 사용하여 안전하게 위치에 도달하는 것이 필요할 때 물체들을 검출하고 그에 응답할 수 있다.
가상 카메라 시스템(176)은 차량의 시스템들로부터의 데이터를 집계하여 차량에서의 디스플레이를 위한 차량의 주변의 비디오를 생성할 수 있다. 비디오는 차량의 예상된 궤적 및 차량의 주변의 일부를 포함하는 가상 카메라의 위치에 대응하는 설정된 시야 내의 이미지를 포함할 수 있다. 예를 들어, 가상 카메라 시스템은 특정 범위를 갖는 차량 외부의 물체들과 같은, 차량의 인식 시스템(172)으로부터의 데이터, 차량의 현재 위치와 같은, 위치확인 시스템(170)으로부터의 데이터, 및 차량의 예상된 궤적과 같은, 내비게이션 시스템(168)으로부터의 데이터를 집계할 수 있다. 가상 카메라 시스템은 그러한 정보를 취득하고 차량의 예상된 궤적 및 검출된 물체들을 차량이 주행하고 있는 루트에 대응하는 맵 상에 오버레이함으로써 비디오를 생성할 수 있다. 가상 카메라 시스템(176)에 의해 생성된 비디오는 차량의 승객들, 다른 개인들에 제시될 수 있거나, 또는 예컨대 차량 내의 디스플레이 상에서 차후 시청을 위해 기록될 수 있다. 가상 카메라 시스템은 프로세서(120), 메모리(130), 데이터(134), 명령어들(132), 및 무선 네트워크 연결들(156)과 같은, 본 명세서에서 설명된 바와 같은 컴퓨팅 디바이스(110)의 컴포넌트들의 일부 또는 전부를 포함할 수 있다. 마찬가지로, 본 명세서에서 설명된 가상 카메라 시스템의 기능들에 더하여, 또는 대안적으로, 가상 카메라 시스템은 컴퓨팅 디바이스(110)의 기능들을 수행할 수 있다. 이와 관련하여, 가상 카메라 시스템은 시스템(160-174)과 같은 차량의 각각의 시스템과 통신할 수 있다.
도 2a 내지 도 2d는 차량(100)의 외부 뷰들의 예들이다. 알 수 있는 바와 같이, 차량(100)은 전조등(202), 앞유리(203), 후미등/방향 지시등(204), 뒷유리(205), 도어(206), 사이드 뷰 미러(208), 타이어 및 바퀴(210), 및 방향 지시등/주차등(212)과 같은 전형적인 차량의 많은 특징들을 포함한다. 전조등(202), 후미등/방향 지시등(204), 및 방향 지시등/주차등(212)은 시그널링 시스템(166)과 연관될 수 있다. 경고등(light bar)(207)도 또한 시그널링 시스템(166)과 연관될 수 있다.
차량(100)은 또한 인식 시스템(172)의 센서들을 포함한다. 예를 들어, 하우징(214)은 360도 또는 더 좁은 시야를 갖는 하나 이상의 레이저 디바이스 및 하나 이상의 카메라 디바이스를 포함할 수 있다. 하우징들(216 및 218)은, 예를 들어, 하나 이상의 레이더 및/또는 소나 디바이스를 포함할 수 있다. 인식 시스템(172)의 디바이스들은 후미등/방향 지시등(204) 및/또는 사이드 뷰 미러(208)와 같은 전형적인 차량 컴포넌트들에 통합될 수도 있다. 이러한 레이더, 카메라 및 레이저 디바이스들 각각은 이러한 디바이스들로부터의 데이터를 인식 시스템(172)의 일부로서 처리하고 센서 데이터를 컴퓨팅 디바이스들(110)에 제공하는 처리 컴포넌트들과 연관될 수 있다.
컴퓨팅 디바이스(110)는 다양한 컴포넌트들을 제어함으로써 차량의 방향 및 속도를 제어할 수 있다. 예로서, 컴퓨팅 디바이스(110)는 상세한 맵 정보 및 내비게이션 시스템(168)으로부터의 데이터를 사용하여 완전히 자율적으로 차량을 목적지 위치까지 내비게이트할 수 있다. 차량을 조종하기 위해, 컴퓨팅 디바이스(110)는 차량이 가속하고(예를 들어, 가속 시스템(162)에 의해 엔진에 제공되는 연료 또는 다른 에너지를 증가시킴으로써), 감속하고(예를 들어, 감속 시스템(160)에 의해 엔진에 공급되는 연료를 감소시키고, 기어를 변경하고, 및/또는 브레이크를 적용함으로써), 방향을 변경하고(예를 들어, 조향 시스템(164)에 의해 차량(100)의 앞바퀴 또는 뒷바퀴를 회전시킴으로써), 그러한 변화들을 시그널링하게(예를 들어, 시그널링 시스템(166)의 방향 지시등들을 점등함으로써) 할 수 있다. 따라서, 가속 시스템(162) 및 감속 시스템(160)은 차량의 동력 시스템(174)(예를 들어, 가스 또는 전기 엔진) 과 차량의 바퀴들 사이에 다양한 컴포넌트들을 포함하는 구동렬의 일부일 수 있다. 다시금, 이러한 시스템들을 제어함으로써, 컴퓨팅 디바이스(110)는 또한 차량을 자율적으로 조종하기 위해 차량의 구동렬을 제어할 수 있다.
차량(100)의 하나 이상의 컴퓨팅 디바이스(110)는 또한 다른 컴퓨팅 디바이스들로 및 그로부터 정보를 수신 또는 전송할 수 있다. 도 3 및 도 4는, 각각, 네트워크(360)를 통해 접속된 복수의 컴퓨팅 디바이스(310, 320, 및 330) 및 스토리지 시스템(350)을 포함하는 예시적인 시스템(300)의 그림 및 기능 다이어그램들이다. 시스템(300)은 또한 차량(100), 및 차량(100)과 유사하게 구성될 수 있는 차량(100A)을 포함한다. 단순성을 위해 소수의 차량들 및 컴퓨팅 디바이스들만이 도시되지만, 전형적인 시스템은 상당히 더 많은 컴퓨팅 디바이스들, 차량들, 및 스토리지 시스템들을 포함할 수 있다.
도 3에 도시된 바와 같이, 컴퓨팅 디바이스들(310, 320, 및 330) 각각은 하나 이상의 프로세서, 메모리, 데이터 및 명령어들을 포함할 수 있다. 그러한 프로세서들, 메모리들, 데이터 및 명령어들은 컴퓨팅 디바이스(110)의 하나 이상의 프로세서(120), 메모리(130), 데이터(134), 및 명령어들(132)과 유사하게 구성될 수 있다.
네트워크(360), 및 개재 노드들은 블루투스, 블루투스 LE와 같은 단거리 통신 프로토콜들, 인터넷, 월드 와이드 웹, 인트라넷들, 가상 사설 네트워크들, 광역 네트워크들, 로컬 네트워크들, 하나 이상의 회사에 전용인 통신 프로토콜들을 이용하는 사설 네트워크들, 이더넷, Wi-Fi 및 HTTP, 및 이들의 다양한 조합을 포함하는 다양한 구성들 및 프로토콜들을 포함할 수 있다. 그러한 통신은, 모뎀들 및 무선 인터페이스들과 같은, 다른 컴퓨팅 디바이스들로 및 이들로부터 데이터를 송신할 수 있는 임의의 디바이스에 의해 용이하게 될 수 있다.
일례에서, 하나 이상의 컴퓨팅 디바이스(310)는 복수의 컴퓨팅 디바이스, 예를 들어, 다른 컴퓨팅 디바이스들로 및 그로부터 데이터를 수신, 처리 및 송신하는 목적을 위해 네트워크의 상이한 노드들과 정보를 교환하는 부하 균형화된 서버 팜을 갖는 서버를 포함할 수 있다. 예를 들어, 하나 이상의 컴퓨팅 디바이스(310)는 네트워크(360)를 통해 차량(100)의 하나 이상의 컴퓨팅 디바이스(110) 또는 차량(100A)의 유사한 컴퓨팅 디바이스뿐만 아니라 클라이언트 컴퓨팅 디바이스들(320 및 330)과 통신할 수 있는 하나 이상의 서버 컴퓨팅 디바이스를 포함할 수 있다. 예를 들어, 차량들(100 및 100A)은 서버 컴퓨팅 디바이스들에 의해 모니터되고 다양한 위치들로 디스패치될 수 있는 차량군의 일부일 수 있다. 이와 관련하여, 차량군의 차량들은 서버 컴퓨팅 디바이스들에게 차량의 각각의 위치확인 시스템들에 의해 제공되는 위치 정보를 주기적으로 전송할 수 있고, 하나 이상의 서버 컴퓨팅 디바이스는 차량들의 위치들을 추적할 수 있다. 또한, 차량의 컴퓨팅 디바이스(110)는 가상 카메라 시스템으로부터의 비디오를 저장 및/또는 차후의 시청을 위해 하나 이상의 서버 컴퓨팅 디바이스에 제공할 수 있다.
게다가, 서버 컴퓨팅 디바이스들(310)은 컴퓨팅 디바이스들(320 및 330)의 디스플레이들(324 및 334)과 같은 디스플레이 상의 사용자들(322 및 332)과 같은 사용자에게 정보를 송신 및 제시하기 위해 네트워크(360)를 사용할 수 있다. 이와 관련하여, 컴퓨팅 디바이스들(320 및 330)은 클라이언트 컴퓨팅 디바이스들로 간주될 수 있다.
도 4에 도시한 바와 같이, 각각의 클라이언트 컴퓨팅 디바이스(320 및 330)는 사용자(322, 332)가 사용하기로 의도된 개인용 컴퓨팅 디바이스일 수 있고, 하나 이상의 프로세서(예를 들어, 중앙 처리 유닛(CPU)), 데이터 및 명령어들을 저장하는 메모리(예를 들어, RAM 및 내부 하드 드라이브들), 디스플레이들(324, 334, 344)과 같은 디스플레이(예를 들어, 스크린을 갖는 모니터, 터치스크린, 프로젝터, 텔레비전, 또는 정보를 디스플레이하도록 동작가능한 다른 디바이스), 및 사용자 입력 디바이스들(426, 436, 446)(예를 들어, 마우스, 키보드, 터치스크린 또는 마이크로폰)을 포함하는 개인용 컴퓨팅 디바이스와 연계하여 보통 사용되는 모든 컴포넌트들을 가질 수 있다. 클라이언트 컴퓨팅 디바이스들은 비디오 스트림들을 기록하기 위한 카메라, 스피커들, 네트워크 인터페이스 디바이스, 및 이러한 요소들을 서로 연결시키기 위해 사용되는 모든 컴포넌트들을 또한 포함할 수 있다.
클라이언트 컴퓨팅 디바이스들(320 및 330)이 각각 풀 사이즈 개인용 컴퓨팅 디바이스를 포함할 수 있지만, 이들은 대안적으로 인터넷과 같은 네트워크를 통해 서버와 데이터를 무선으로 교환할 수 있는 모바일 컴퓨팅 디바이스들을 포함할 수 있다. 단지 예로서, 클라이언트 컴퓨팅 디바이스(320)는 모바일 폰 또는 무선 가능 PDA, 태블릿 PC, 웨어러블 컴퓨팅 디바이스 또는 시스템과 같은 디바이스, 또는 인터넷 또는 다른 네트워크들을 통해 정보를 획득할 수 있는 넷북일 수 있다. 다른 예에서, 클라이언트 컴퓨팅 디바이스(330)는 "스마트 와치"와 같은 웨어러블 컴퓨팅 디바이스일 수 있다. 예로서 사용자는 키보드, 키패드, 다기능 입력 버튼, 마이크로폰, 카메라 또는 다른 센서들과의 시각 신호들(예를 들어, 손 또는 다른 제스처들), 터치스크린 등을 이용하여 정보를 입력할 수 있다.
스토리지 시스템(350)은 가상 카메라 시스템(176)에 의해 생성된 비디오들과 같은 다양한 유형들의 정보 및 데이터를 저장할 수 있다. 이 정보는 본 명세서에서 설명된 특징들의 일부 또는 전부를 수행하기 위하여, 하나 이상의 서버 컴퓨팅 디바이스(310)와 같은 서버 컴퓨팅 디바이스, 또는 클라이언트 컴퓨팅 디바이스들(320 및 330)에 의해 검색되거나 달리 액세스될 수 있다. 예를 들어, 정보는, 하나 이상의 서버 컴퓨팅 디바이스에 대해 사용자를 식별하는 데 사용될 수 있는 자격증명들(예를 들어, 전통적인 단일 인자 인증의 경우에서와 같은 사용자 이름 및 패스워드뿐만 아니라 랜덤 식별자들, 생체인식(biometrics) 등과 같은 다중 인자 인증들에서 전형적으로 사용되는 다른 유형들의 자격증명들)과 같은 사용자 계정 정보를 포함할 수 있다. 사용자 계정 정보는 사용자의 클라이언트 컴퓨팅 디바이스(또는 다수의 디바이스가 동일한 사용자 계정을 가지고 사용되는 경우 디바이스들)의 정보를 식별하는, 사용자 이름, 연락처 정보와 같은 개인 정보뿐만 아니라 사용자에 대한 하나 이상의 고유 신호를 또한 포함할 수 있다.
메모리(130)에서와 같이, 스토리지 시스템(350)은, 하드 드라이브, 메모리 카드, ROM, RAM, DVD, CD-ROM, 기입 가능, 및 판독 전용 메모리들과 같은, 서버 컴퓨팅 디바이스들(310)에 의해 액세스 가능한 정보를 저장할 수 있는 임의의 유형의 컴퓨터화된 스토리지스일 수 있다. 게다가, 스토리지 시스템(350)은 동일한 또는 상이한 지리적 위치들에 물리적으로 위치할 수 있는 복수의 상이한 스토리지 디바이스상에 데이터가 저장되는 분산형 스토리지 시스템을 포함할 수 있다. 스토리지 시스템(350)은 도 4에 도시된 바와 같이 네트워크(360)를 통해 컴퓨팅 디바이스들에 접속될 수 있고 및/또는 컴퓨팅 디바이스들(310, 320, 330, 등) 중 임의의 것에 직접 접속되거나 통합될 수 있다.
예시적인 방법들
위에서 설명되고 도면들에 예시된 동작들에 더하여, 다양한 동작들이 이제 설명될 것이다. 다음의 동작들이 아래에 설명된 정확한 순서로 수행될 필요는 없다는 것을 이해해야 한다. 오히려, 다양한 단계들이 상이한 순서로 또는 동시에 처리될 수 있으며, 단계들이 추가되거나 생략될 수도 있다.
차량 내의 가상 카메라 시스템은 비디오를 생성할 수 있다. 이와 관련하여, 컴퓨팅 디바이스는 차량의 내비게이션 시스템, 위치확인 시스템, 및 인식 시스템으로부터 데이터를 수신할 수 있다. 이러한 시스템들로부터 수신된 데이터는 차량의 예상된 궤적뿐만 아니라 차량의 근처 내의 다른 차량들과 같은 물체들을 나타내는 데이터를 포함할 수 있다. 예를 들어, 예상된 궤적 정보는 차량의 내비게이션 시스템(168) 및 위치확인 시스템(170)에 의해 제공될 수 있고, 물체 데이터는 인식 시스템(172)에 의해 제공될 수 있다. 컴퓨팅 디바이스는 이 데이터를 가상 카메라 시스템에 전달할 수 있다.
가상 카메라 시스템에 의해 수신된 데이터에 기초하여, 차량의 승객들에 의한 시청을 위해 차량 내의 디스플레이 상에 디스플레이하기 위한 비디오가 생성될 수 있다. 이와 관련하여, 가상 카메라 시스템은 차량의 예상된 궤적 및 검출된 물체들을 차량이 주행하고 있는 루트에 대응하는 맵 상에 오버레이함으로써 수신된 데이터를 이용하여 가상 카메라의 관점에서 비디오를 생성할 수 있다. 예를 들어, 도 6은 차량의 위 및 뒤에 위치된 가상 카메라의 관점에서 가상 카메라 시스템에 의해 생성된 비디오의 하나의 프레임을 도시한다. 비디오는 가상 카메라의 설정된 시야(503) 내에 제시된 맵(601)을 포함한다. 비디오는 차량의 예상된 궤적(620)과 함께, 차량(100) 및 맵(601) 상에 오버레이된 차량의 주변(610)의 가상 표현을 추가로 포함한다. 비디오는 애니메이션들, 일러스트레이션들, 라이브-액션, 및/또는 비디오들에서 전형적으로 발견되는 다른 그러한 콘텐츠를 포함할 수 있다.
가상 카메라의 관점은 디폴트 위치에서 차량에 대해 고정될 수 있다. 예를 들어, 도 5a 및 도 5b에 도시된 바와 같이, 고정 위치 가상 카메라(501)의 이 디폴트 위치는 차량(100)의 위 및 후방에 있고 제1 헤딩(505)으로 지향될 수 있다. 비디오는 고정 위치 가상 카메라(501)의 위치 및 제1 헤딩(505)에 대응하는 설정된 시야(503) 내의 이미지를 포함할 수 있다.
차량이 턴을 수행할 때, 고정 위치 가상 카메라(501)는 차량에 대해 디폴트 위치에 남아 있을 수 있고, 따라서 비디오는 도 6의 예시적인 비디오에 도시된 바와 같이, 제1 헤딩(505)에서 캡처되고 설정된 시야(503) 내에 위치하는 차량의 주변(610) 및 차량의 예상된 궤적(620)을 계속해서 제공할 것이다.
차량이 턴을 수행함에 따라 가상 카메라의 위치는 차량의 예상된 헤딩에 대응하는 조정된 시야 내의 비디오를 제시하기 위해 차량 주위로 회전될 수 있다. 이와 관련하여, 차량이 턴을 수행함에 따라, 가상 카메라는, 디폴트 위치로부터, 차량 주위로 미리 결정된 거리를 회전할 수 있다. 예를 들어, 차량(100)이 제1 도로로부터 제2 도로로 제1 방향(710)으로 턴을 할 때, 가상 카메라(701)는 그의 고정 위치로부터 도 7에 도시된 바와 같은 새로운 헤딩(705)으로 지향되도록 반시계 방향으로 회전할 수 있다. 그에 따라, 가상 카메라의 시야는 업데이트된 시야(703)에 대응할 수 있다.
업데이트된 시야(703)는, 도 8에 도시된 바와 같이, 비디오가 차량(100)이 터닝하고 있는 제2 도로(812)의 이미지를 포함하도록 조정될 수 있다. 상기 예는 아래에 논의되는 바와 같이, 차량(100)이 제1 도로(811)로부터 제2 도로로 터닝하는 것을 도시하지만, 가상 카메라 회전은 차량(100)이 예컨대 도로 상의 만곡부를 돌아 또는 주차 공간 내로 임의의 터닝 모션들을 할 때 발생할 수 있다.
가상 카메라(701)가 차량 주위로 회전하는 거리는 차량이 수행하고 있는 턴의 각도에 기초할 수 있다. 도 8에 추가로 도시된 바와 같이, 차량이 수행하고 있는 턴의 각도는 차량이 턴을 수행하기 전에 원래 있던 원래 헤딩(705)과 차량이 현재 있는 현재 헤딩(815) 사이의 각도 차이를 측정함으로써 결정될 수 있다. 원래 헤딩(705) 및 현재 헤딩은 차량의 내비게이션 시스템(168) 및 위치확인 시스템(170)에 의해 제공될 수 있다.
가상 카메라 시스템은 차량이 수행하고 있는 턴의 각도를 회전 테이블에 입력할 수 있다. 회전 테이블은 턴의 각도를 카메라 회전 각도에 매핑할 수 있다. 예를 들어, 회전 테이블에 입력된 턴의 각도는 90°일 수 있고, 회전 테이블은 그 90° 각도를 45° 카메라 회전에 매핑할 수 있다. 그 후 가상 카메라 시스템은 가상 카메라(701)를 카메라 회전 각도만큼 회전시킬 수 있고, 그에 의해 가상 카메라(701)의 시야도 카메라 회전 각도만큼 회전하게 한다.
차량이 턴을 통해 진행함에 따라, 가상 카메라 시스템은 카메라 회전 각도를 계속적으로 업데이트할 수 있다. 예를 들어, 도 9 내지 도 12에 도시된 바와 같이, 턴을 완료하기 위해, 차량은 0° - 90° 이상 또는 이하와 같은 일련의 각도들을 통해 진행한다.
가상 카메라 시스템은 차량이 턴에 들어가기 전에 주행하고 있던 헤딩에 대해 차량이 현재 수행하고 있는 턴의 각도에 기초하여 카메라 회전 각도를 계속적으로 조정할 수 있다. 이와 관련하여, 가상 카메라 시스템은 턴의 각도에 기초하여 카메라 회전 각도를 계속적으로 계산함으로써 실질적으로 실시간으로 카메라 회전 각도를 업데이트할 수 있다. 예를 들어, 차량은 초기 헤딩(903)에서 예상된 궤적(901)을 따라 주행중일 수 있고 가상 카메라(701)는 제1 시야(920)로 디폴트 위치에 위치될 수 있다.
차량(100)이 터닝하기 시작함에 따라, 도 10에 도시된 바와 같이, 차량의 헤딩이 새로운 헤딩(1003)으로 업데이트될 수 있다. 초기 헤딩과 새로운 헤딩 사이의 차이가 회전 테이블에 입력될 수 있고 카메라 회전 각도가 출력될 수 있다. 그 후 가상 카메라 시스템은 가상 카메라(701)를 출력된 카메라 회전 각도만큼 회전시킬 수 있고, 그에 의해 가상 카메라(701)의 시야도 카메라 회전 각도만큼 회전하여 도 10에 더 도시된 바와 같이 제2 시야(1020)를 보여주게 한다.
유사하게, 차량(100)이 턴을 따라 진행함에 따라, 도 11 에 도시된 바와 같이 초기 헤딩(903)과 최신 헤딩(1101) 사이의 차이가 회전 테이블에 입력될 수 있고 카메라 회전 각도가 출력될 수 있다. 그 후 가상 카메라 시스템은 가상 카메라(701)를 출력된 카메라 회전 각도만큼 회전시킬 수 있고, 그에 의해 가상 카메라(701)의 시야도 카메라 회전 각도만큼 회전하여 도 11에 더 도시된 바와 같이 제3 시야(1120)를 보여주게 한다. 초기 헤딩(903)과 최신 헤딩(1101) 사이의 차이의 결정은 1초의 100분의 1 이상 또는 이하마다 발생할 수 있다. 차량(100)에 의한 턴이 완료되면, 가상 카메라(701)는 디폴트 위치로 되돌아가고, 그에 의해 도 12에 도시된 바와 같이 시야(1220)를 캡처할 수 있다.
가상 카메라 시스템은 차량이 턴을 하기 전에 미리 결정된 거리에서 가상 카메라를 회전시키기 시작할 수 있다. 이와 관련하여, 가상 카메라 시스템은 차량의 예상된 궤적에 기초하여 차량의 다가오는 턴의 예상된 각도를 결정할 수 있다. 예를 들어, 가상 카메라 시스템은 차량의 예상된 궤적 및 차량의 위치를 모니터링하여 다가오는 턴으로부터의 차량의 거리 및 차량이 행할 턴의 예상된 각도들을 결정할 수 있다. 가상 카메라 시스템은 예상된 턴이 얼마나 멀리 떨어져 있는지를 미리 결정된 거리와 비교할 수 있다. 가상 카메라 시스템이 예상된 턴이 미리 결정된 거리 이하에 위치하는 것으로 결정하면, 가상 카메라 시스템은 턴의 예상된 각도들에 대응하는 카메라 회전 각도들을 통해 가상 카메라를 회전시키기 시작할 수 있다.
미리 결정된 거리는 차량의 속도 및 턴으로부터의 차량의 거리에 기초할 수 있다. 이와 관련하여, 차량이 더 빠른 속도로 주행중일 때, 미리 결정된 거리는 차량이 더 느린 속도로 주행중일 때보다 더 클 수 있다. 이것은 가상 카메라의 더 평활하고 더 완만한 회전을 가능하게 할 수 있다.
일부 실시예들에서, 가상 카메라의 회전은 차량이 정지되어 있거나 정지할 것으로 예상될 때 일시적으로 중단될 수 있다. 예를 들어, 가상 카메라는 차량의 예상된 궤적을 수신하고 차량이 좌측으로 터닝할 것이지만 먼저 정지 신호등을 통과할 것으로 결정할 수 있다. 그에 따라, 자동차가 정지 신호등을 통해 주행할 때까지 가상 카메라는 회전하지 않을 수 있다.
사소한 오버스티어링 정정들에 의해 야기되는 것들과 같은 사소한 카메라 회전들을 최소화하기 위해서뿐만 아니라 더 큰 카메라 회전들을 평활화하기 위해 스쿼싱 함수가 사용될 수 있다. 이와 관련하여, 스쿼싱 함수는 생성된 비디오가 끊임없이 위치를 전환하거나 너무 빠르게 이동하는 것으로 보이는 이미지를 포함하는 것을 방지할 수 있다. 예를 들어, 2개의 예시적인 스쿼싱 결과(1310 및 1302)가 도 13에 더 도시되어 있다. 스쿼싱 결과들을 획득하기 위해, 도 13의 X축에 의해 도시된 바와 같은, 차량이 수행하고 있는 턴의 각도가 스쿼싱 함수에 입력될 수 있다. 스쿼싱 함수는 Y축에 도시된 바와 같은, 대응하는 카메라 회전 각도를 계산하고 출력할 수 있다. Y축에 도시된 바와 같은, 출력된 카메라 각도 회전 값들은 X축에 도시된 바와 같은 턴의 각도들보다 더 또는 덜 완만할 수 있다.
일례로서, 가상 카메라 시스템은 비보호 턴들에서 다가오는 교통에 대응하는 이미지를 생성하기 위해 가상 카메라를 회전시킬 수 있다. 이와 관련하여, 가상 카메라는, 도 14 및 도 15에 도시된 바와 같이, 차량이 터닝(1420)하려고 시도하고 있는 도로 상에서 주행중인 다른 차량들(1501)에 대응하는 이미지를 생성하기 위해 차량의 예상된 궤적(1430)의 반대 방향으로 회전할 수 있다. 카메라 회전 각도는 45° 이상 또는 이하와 같이, 비보호 턴들에 대해 미리 결정될 수 있다. 그에 따라, 생성된 비디오는 차량의 승객들에게 그들이 차량을 운전중일 경우 경험할 것들과 유사한 이미지를 제공할 수 있다. 비보호 턴들은 교통이 이동하고 있는 도로 상으로 차량이 터닝하고 있는 턴들로서, 예컨대 교차로에서 적색등에서 우회전 또는 정지 표지에서 우회전이고, 그 교차로에서 자동차가 터닝하고 있는 도로는 다른 차량들이 그 교차로에서 정지할 것을 요구하지 않는다.
가상 카메라의 높이 및 피치는 또한 차량의 주변을 더 또는 덜 캡처하도록 조정될 수 있다. 예를 들어, 차량이 교차로(1600)에서 정지되어 있을 때, 가상 카메라(710)는 차량(100) 위에 위치될 수 있고, 가상 카메라의 피치는, 도 16에 도시된 바와 같이, 아래로 차량을 보도록 조정될 수 있다. 가상 카메라(710)는 곧장 아래로 차량(100)을 볼 수 있다. 그 후 가상 카메라(710)는 도 16에 더 도시된 바와 같이 차량의 모든 주위로부터의 이미지를 포함하는 비디오를 생성할 수 있다.
도 17은 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위해 차량(100)의 컴퓨팅 디바이스(110)와 같은 차량의 하나 이상의 컴퓨팅 디바이스에 의해 수행될 수 있는 예시적인 흐름 다이어그램(1700)이다. 이 예에서, 블록 1710에 도시된 바와 같이, 하나 이상의 컴퓨팅 디바이스는 턴을 하기 전의 차량의 원래 헤딩 및 차량의 현재 헤딩을 수신할 수 있다. 블록 1720에 도시된 바와 같이, 하나 이상의 컴퓨팅 디바이스는, 차량의 원래 헤딩 및 차량의 현재 헤딩에 기초하여, 차량이 수행하고 있는 턴의 각도를 결정할 수 있다. 블록 1730에 도시된 바와 같이, 하나 이상의 컴퓨팅 디바이스는 카메라 회전 각도를 결정하고, 블록 1740에 도시된 바와 같이, 가상 카메라를 카메라 회전 각도만큼 회전시킴으로써 차량에 대한 가상 카메라의 방위를 업데이트된 방위로 조정할 수 있다. 블록 1750에 도시된 바와 같이 하나 이상의 컴퓨팅 디바이스는 가상 카메라의 업데이트된 방위에 대응하는 비디오를 생성하고, 블록 1760에 도시된 바와 같이 디스플레이 상에 비디오를 디스플레이할 수 있다.
달리 언급되지 않는 한, 전술한 대안적인 예들은 상호 배타적이지 않으며, 고유의 이점들을 달성하도록 다양한 조합들로 구현될 수 있다. 위에서 논의된 특징들의 이러한 및 다른 변형들 및 조합들이 청구항들에 의해 정의되는 주제를 벗어나지 않고서 활용될 수 있으므로, 전술한 실시예들의 설명은 청구항들에 의해 정의되는 주제의 제한으로서가 아니라 예시로서 받아들여져야 한다. 게다가, 본 명세서에서 설명된 예들뿐만 아니라, "와 같은", "포함하는" 등의 문구로된 절들의 제공은 청구항들의 주제를 특정 예들로 제한하는 것으로 해석되어서는 안 된다; 오히려, 예들은 많은 가능한 실시예들 중 하나만을 예시하기 의도된 것이다. 게다가, 상이한 도면들에서의 동일한 참조 번호들은 동일하거나 유사한 요소들을 식별할 수 있다.

Claims (20)

  1. 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 컴퓨터 구현 방법으로서, 상기 방법은:
    하나 이상의 컴퓨팅 디바이스에 의해, (1) 상기 턴에 들어가기 전의 상기 차량의 원래 헤딩 및 (2) 상기 차량의 예상된 궤적을 나타내는 정보를 수신하는 단계;
    상기 차량의 원래 헤딩 및 상기 차량의 예상된 궤적에 기초하여, 상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 차량이 수행할 것으로 예상되는 턴의 각도들을 결정하는 단계;
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들에 기초하여 카메라 회전 각도들을 결정하는 단계;
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들에 대응하는 상기 카메라 회전 각도들로 상기 가상 카메라를 회전시킴으로써 상기 차량에 대한 상기 가상 카메라의 방위를 초기 방위로부터 업데이트된 방위로 조정하는 단계 - 상기 조정은 상기 차량이 상기 턴을 하기 전의 미리 결정된 거리에서 개시됨 -; 및
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 상기 차량이 상기 턴을 수행하기 전에 상기 가상 카메라의 조정된 방위에 대응하는 비디오를 생성하고 디스플레이하는 단계를 포함하는, 방법.
  2. 제1항에 있어서, 상기 차량의 원래 헤딩은 상기 차량의 위치확인 시스템으로부터 수신되고 상기 차량의 예상된 궤적은 상기 차량의 내비게이션 시스템으로부터 수신되는, 방법.
  3. 제1항에 있어서, 상기 턴의 각도들은 상기 차량의 예상된 헤딩들로부터의 상기 턴을 수행하기 전의 상기 차량의 원래 헤딩 사이의 차이를 계산함으로써 결정되는, 방법.
  4. 제1항에 있어서, 상기 카메라 회전 각도들은 상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들을 스쿼싱 함수에 입력하고 출력된 각도들을 수신함으로써 계산되고, 상기 출력된 각도들은 상기 카메라 회전 각도들인, 방법.
  5. 제1항에 있어서, 상기 카메라 회전 각도들은 각각의 턴의 각도에 대한 미리 결정된 카메라 회전 각도들을 포함하는 테이블에 액세스함으로써 결정되는, 방법.
  6. 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 장치로서,
    명령어들을 저장하도록 구성된 메모리; 및
    상기 메모리와 통신하는 하나 이상의 프로세서
    를 포함하고, 상기 하나 이상의 프로세서는 상기 명령어들을 실행하여:
    (1) 상기 턴에 들어가기 전의 상기 차량의 원래 헤딩 및 (2) 상기 차량의 예상된 궤적을 나타내는 정보를 수신하고;
    상기 차량의 원래 헤딩 및 상기 차량의 예상된 궤적에 기초하여, 상기 차량이 수행할 것으로 예상되는 턴의 각도들을 결정하고;
    상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들에 기초하여 카메라 회전 각도들을 결정하고;
    상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들에 대응하는 상기 카메라 회전 각도들로 상기 가상 카메라를 회전시킴으로써 상기 차량에 대한 상기 가상 카메라의 방위를 초기 방위로부터 업데이트된 방위로 조정하고 - 상기 조정은 상기 차량이 상기 턴을 하기 전의 미리 결정된 거리에서 개시됨 -;
    상기 차량이 상기 턴을 수행하기 전에 상기 가상 카메라의 조정된 방위에 대응하는 비디오를 생성하고 디스플레이
    하는, 장치.
  7. 제6항에 있어서, 상기 차량의 원래 헤딩은 상기 하나 이상의 프로세서에 의해 상기 차량의 위치확인 시스템으로부터 수신되고, 상기 차량의 예상된 궤적은 상기 하나 이상의 프로세서에 의해 상기 차량의 내비게이션 시스템으로부터 수신되는, 장치.
  8. 제6항에 있어서, 상기 턴의 각도들은 상기 하나 이상의 프로세서가 상기 차량의 예상된 헤딩들로부터의 상기 턴을 수행하기 전의 상기 차량의 원래 헤딩 사이의 차이를 계산함으로써 결정되는, 장치.
  9. 제6항에 있어서, 상기 카메라 회전 각도들은 상기 하나 이상의 프로세서가 상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들을 스쿼싱 함수에 입력하고 출력된 각도들을 수신함으로써 계산되고, 상기 출력된 각도들은 상기 카메라 회전 각도들인, 장치.
  10. 제6항에 있어서, 상기 카메라 회전 각도들은 상기 하나 이상의 프로세서가 각각의 턴의 각도에 대한 미리 결정된 카메라 회전 각도들을 포함하는 테이블에 액세스함으로써 결정되는, 장치.
  11. 명령어들이 저장되는 컴퓨터 판독가능 매체로서, 상기 명령어들은, 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하는 방법을 수행하게 하고, 상기 방법은:
    (1) 상기 턴에 들어가기 전의 상기 차량의 원래 헤딩 및 (2) 상기 차량의 예상된 궤적을 나타내는 정보를 수신하는 단계;
    상기 차량의 원래 헤딩 및 상기 차량의 예상된 궤적에 기초하여, 상기 차량이 수행할 것으로 예상되는 턴의 각도들을 결정하는 단계;
    상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들에 기초하여 카메라 회전 각도들을 결정하는 단계;
    상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들에 대응하는 상기 카메라 회전 각도들로 상기 가상 카메라를 회전시킴으로써 상기 차량에 대한 상기 가상 카메라의 방위를 초기 방위로부터 업데이트된 방위로 조정하는 단계 - 상기 조정은 상기 차량이 상기 턴을 하기 전의 미리 결정된 거리에서 개시됨 -; 및
    상기 차량이 상기 턴을 수행하기 전에 상기 가상 카메라의 조정된 방위에 대응하는 비디오를 생성하고 디스플레이하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  12. 제11항에 있어서, 상기 차량의 원래 헤딩은 상기 차량의 위치확인 시스템으로부터 수신되고 상기 차량의 예상된 궤적은 상기 차량의 내비게이션 시스템으로부터 수신되는, 컴퓨터 판독가능 매체.
  13. 제11항에 있어서, 상기 턴의 각도들은 상기 차량의 예상된 헤딩들로부터의 상기 턴을 수행하기 전의 상기 차량의 원래 헤딩 사이의 차이를 계산함으로써 결정되는, 컴퓨터 판독가능 매체.
  14. 제11항에 있어서, 상기 카메라 회전 각도들은 상기 차량이 수행할 것으로 예상되는 상기 턴의 각도들을 스쿼싱 함수에 입력하고 출력된 각도들을 수신함으로써 계산되고, 상기 출력된 각도들은 상기 카메라 회전 각도들인, 컴퓨터 판독가능 매체.
  15. 제1항에 있어서, 상기 차량에 대한 상기 가상 카메라의 방위를 조정하는 단계는 상기 가상 카메라를 상기 예상된 궤적과 반대 방향으로 회전시키는 단계를 포함하는, 방법.
  16. 제15항에 있어서, 상기 가상 카메라를 상기 반대 방향으로 회전시키는 단계는 비보호 턴에 대해 수행되는, 방법.
  17. 제1항에 있어서, 상기 가상 카메라가 상기 차량 주위로 회전하는 거리는 상기 차량이 수행할 것으로 예상되는 상기 턴의 각도에 기초하는, 방법.
  18. 삭제
  19. 제1항에 있어서, 상기 차량이 정지할 것으로 예상된다고 결정되면 상기 가상 카메라를 회전시키는 것을 중단하는 단계를 추가로 포함하는, 방법.
  20. 제6항에 있어서, 상기 하나 이상의 프로세서가 상기 차량이 정지할 것으로 예상된다고 결정하면 상기 가상 카메라는 회전을 중단하는, 장치.
KR1020197015628A 2016-11-30 2017-11-17 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 방법 및 시스템 KR102227316B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/364,914 2016-11-30
US15/364,914 US20180152628A1 (en) 2016-11-30 2016-11-30 Camera peek into turn
PCT/US2017/062295 WO2018102161A1 (en) 2016-11-30 2017-11-17 Method and system for adjusting a virtual camera's orientation when a vehicle is making a turn

Publications (2)

Publication Number Publication Date
KR20190077482A KR20190077482A (ko) 2019-07-03
KR102227316B1 true KR102227316B1 (ko) 2021-03-12

Family

ID=60703011

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197015628A KR102227316B1 (ko) 2016-11-30 2017-11-17 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 방법 및 시스템

Country Status (8)

Country Link
US (2) US20180152628A1 (ko)
EP (2) EP3532342B1 (ko)
JP (2) JP6906052B2 (ko)
KR (1) KR102227316B1 (ko)
CN (1) CN110023141B (ko)
AU (1) AU2017366812B2 (ko)
CA (1) CA3045432C (ko)
WO (1) WO2018102161A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10257582B2 (en) * 2017-03-17 2019-04-09 Sony Corporation Display control system and method to generate a virtual environment in a vehicle
JP2019016188A (ja) * 2017-07-07 2019-01-31 株式会社日立製作所 移動体遠隔操作システムおよび移動体遠隔操作方法
US10580299B2 (en) * 2017-10-13 2020-03-03 Waymo Llc Lane change notification
CN110462703A (zh) * 2018-03-08 2019-11-15 百度时代网络技术(北京)有限公司 基于碰撞后分析的自动驾驶车辆的车辆动作优化
US10755575B2 (en) * 2018-08-30 2020-08-25 Cisco Technology, Inc. Raw sensor data sharing for enhanced fleet-wide environmental awareness and safety
DE112019005706T5 (de) * 2018-11-13 2021-07-29 Rivian IP Holdings, LLC. ysteme und Verfahren zur Steuerung einer Fahrzeugkamera
KR102465191B1 (ko) * 2021-11-17 2022-11-09 주식회사 에스씨 선박의 입항 및 접안을 어시스트하는 어라운드뷰 시스템
CN116883504B (zh) * 2023-09-07 2023-12-08 深圳魔视智能科技有限公司 车辆朝向的校准方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110246409A1 (en) * 2010-04-05 2011-10-06 Indian Statistical Institute Data set dimensionality reduction processes and machines
JP2012071832A (ja) * 2011-12-27 2012-04-12 Nissan Motor Co Ltd 車両用表示装置および車両用映像表示制御方法
KR101265711B1 (ko) * 2011-11-30 2013-05-20 주식회사 이미지넥스트 3d 차량 주변 영상 생성 방법 및 장치
JP2015015527A (ja) * 2013-07-03 2015-01-22 クラリオン株式会社 映像表示システム、映像合成装置及び映像合成方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3391081B2 (ja) * 1994-02-04 2003-03-31 日産自動車株式会社 鳥瞰図表示機能付ナビゲーションシステム
JPH1089988A (ja) * 1996-09-10 1998-04-10 Nissan Motor Co Ltd 車両用経路誘導装置
JP3447900B2 (ja) * 1996-09-13 2003-09-16 アルパイン株式会社 ナビゲーション装置
JP3176037B2 (ja) * 1996-09-19 2001-06-11 株式会社東芝 ナビゲーション装置および同装置における映像データ表示方法
JP3412684B2 (ja) * 1999-03-01 2003-06-03 アイシン・エィ・ダブリュ株式会社 ナビゲーション装置及び該装置の記録媒体
JP3508665B2 (ja) * 1999-12-24 2004-03-22 株式会社豊田自動織機 操舵支援装置
DE10063980A1 (de) * 2000-12-14 2002-11-14 Markus Silberschmidt Virtual observing animation / Berechnete Beobachter Bewegung
JP3936885B2 (ja) * 2002-05-17 2007-06-27 アルパイン株式会社 三次元地図表示方法および三次元地図表示装置
JP2005193845A (ja) * 2004-01-09 2005-07-21 Nissan Motor Co Ltd 車両用監視装置
DE102006006850B4 (de) 2006-02-15 2022-12-29 Bayerische Motoren Werke Aktiengesellschaft Verfahren zur Ausrichtung eines verschwenkbaren Fahrzeugsensors
DE102009006475A1 (de) * 2009-01-28 2010-07-29 Adc Automotive Distance Control Systems Gmbh Kamera für ein Kraftfahrzeug
JP5077307B2 (ja) * 2009-08-05 2012-11-21 株式会社デンソー 車両周囲画像表示制御装置
JP5220797B2 (ja) 2010-04-19 2013-06-26 富士通テン株式会社 車両の運転支援装置
JP2012195793A (ja) * 2011-03-17 2012-10-11 Clarion Co Ltd 車両周辺監視装置
RU2576362C2 (ru) * 2011-08-02 2016-02-27 Ниссан Мотор Ко., Лтд. Устройство помощи при вождении и способ помощи при вождении
US8983778B2 (en) * 2012-06-05 2015-03-17 Apple Inc. Generation of intersection information by a mapping service
US20140114534A1 (en) * 2012-10-19 2014-04-24 GM Global Technology Operations LLC Dynamic rearview mirror display features
KR101896715B1 (ko) * 2012-10-31 2018-09-07 현대자동차주식회사 주변차량 위치 추적 장치 및 방법
JP6148887B2 (ja) * 2013-03-29 2017-06-14 富士通テン株式会社 画像処理装置、画像処理方法、及び、画像処理システム
JP6206142B2 (ja) 2013-12-03 2017-10-04 日産自動車株式会社 情報表示装置
CN104020674B (zh) * 2014-04-21 2017-01-25 华南农业大学 车辆Bug避障算法的Matlab仿真可视化平台
US9436182B2 (en) 2014-05-23 2016-09-06 Google Inc. Autonomous vehicles
US9599485B2 (en) * 2014-05-30 2017-03-21 Apple Inc. Navigation peek ahead and behind
US9740945B2 (en) * 2015-01-14 2017-08-22 Magna Electronics Inc. Driver assistance system for vehicle
MX367989B (es) * 2015-10-08 2019-09-13 Nissan Motor Dispositivo de asistencia de despliegue y método de asistencia de despliegue.
US10576892B2 (en) * 2016-03-24 2020-03-03 Ford Global Technologies, Llc System and method for generating a hybrid camera view in a vehicle

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110246409A1 (en) * 2010-04-05 2011-10-06 Indian Statistical Institute Data set dimensionality reduction processes and machines
KR101265711B1 (ko) * 2011-11-30 2013-05-20 주식회사 이미지넥스트 3d 차량 주변 영상 생성 방법 및 장치
JP2012071832A (ja) * 2011-12-27 2012-04-12 Nissan Motor Co Ltd 車両用表示装置および車両用映像表示制御方法
JP2015015527A (ja) * 2013-07-03 2015-01-22 クラリオン株式会社 映像表示システム、映像合成装置及び映像合成方法

Also Published As

Publication number Publication date
JP7123207B2 (ja) 2022-08-22
US20180152628A1 (en) 2018-05-31
CA3045432C (en) 2022-05-10
AU2017366812B2 (en) 2020-06-25
JP2020519037A (ja) 2020-06-25
JP2021108470A (ja) 2021-07-29
EP3532342B1 (en) 2022-02-23
AU2017366812A1 (en) 2019-06-20
CN110023141A (zh) 2019-07-16
US20210211576A1 (en) 2021-07-08
CN110023141B (zh) 2023-08-08
JP6906052B2 (ja) 2021-07-21
EP3532342A1 (en) 2019-09-04
WO2018102161A1 (en) 2018-06-07
EP3862227A1 (en) 2021-08-11
CA3045432A1 (en) 2018-06-07
KR20190077482A (ko) 2019-07-03

Similar Documents

Publication Publication Date Title
KR102227316B1 (ko) 차량이 턴을 하고 있을 때 가상 카메라의 방위를 조정하기 위한 방법 및 시스템
JP6671554B1 (ja) 車輪姿勢を使用した将来の進行方向の決定
KR102315335B1 (ko) 자율 차량들에 대해 할당된 승객들의 인식
JP7263233B2 (ja) 車両衝突を検出するための方法、システム及びプログラム
JP2019537530A (ja) 自律走行車の停車位置のプランニング
US11195415B2 (en) Lane change notification
KR102210140B1 (ko) 센서 데이터로부터 생성된 물체를 평활화하기 위한 맵 정보의 이용
US20220120581A1 (en) End of trip sequence
US10685566B1 (en) Differentiating roadways by elevation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant