본문으로 건너뛰기

M14.02 · 카메라-LiDAR·IMU·엔코더·GNSS 정합

단위별 목표·권장 선수와 자료 준비 상태를 확인하고, 공개된 본문과 활동을 읽고 준비 상태를 확인할 수 있습니다.

전체 커리큘럼

학습 안내

본문을 읽고 장비 없는 기본 실습·세 확인 문제와 해설로 이해를 확인하세요.

예상 학습 시간: 미정. 이 페이지 방문이나 자료 열람으로 완료·숙달을 자동 부여하지 않습니다.

현재 경로·이전·다음 단위 확인 ↓

학습 목표

  • 여러 센서의 측정량·단위·축·시각·유효성 계약을 구분하고 비교 가능한 형태를 정의한다.
  • 카메라-LiDAR 투영과 장착점 보정·차륜 이동·시각 불일치를 작은 합성 값으로 계산한다.
  • 정합 검수와 통계적 융합을 구분하고 중복 정보·누락 변환·장착/시간 오류의 진단 근거를 제안한다.

아래 설명·실습·문제로 각 학습 목표를 확인하세요.

권장 선수

M14.01의 내부/외부 보정과 M13.01의 점군을 사용한다. M14.03의 상세 동기화와 M14.04의 확률 필터에 앞서 센서 입력을 읽는 계약을 익힌다. 일반 코딩·문법·설치나 실제 센서 보정은 요구하지 않으며 제공된 좌표/기록을 계산한다. 이미 알고 있다면 직접 열어볼 수 있습니다.

설명 필수

세 목표에 대응하는 검수된 설명·예제를 읽습니다.

한 시각에 모았다고 같은 종류의 값이 되지는 않는다

카메라 픽셀, LiDAR점, IMU각속도, 엔코더 증가량과 GNSS위치는 서로 다른 질문에 답한다. 정합은 이 자료를 비교/결합할 때 필요한 공간·시간·측정 의미를 맞추는 일이다. 융합은 그런 관측과 모델을 이용해 상태를 추정하는 일이다. 잘못된 축/단위의 값을 평균 내거나 공분산을 조정한다고 입력 계약이 맞아지지는 않는다.

M14.01에서 내부/외부 보정을 구분했다. 보정은 관계를 추정/검사하는 과정이며, 여기서는 제공된 보정값을 자료에 적용하고 유효성을 점검한다. 파일에 변환 숫자를 적는 것과 실제 장착 관계가 맞는다는 검증은 구분한다. 다음의 센서별 입력표부터 작성하면 어떤 양이 어떤 프레임/시각에 있는지 추적하기 쉽다.

센서직접 읽는 양의 예먼저 확인할 계약
카메라영상/특징의 픽셀해상도·raw/정렬·내부행렬·노출시각
LiDAR센서좌표의 공간점길이단위·축·유효값·스캔/점별시각
IMU각속도·가속도·제공된다면 자세센서축·단위·중력/기준방향·보정/미제공표시
엔코더카운트/회전 증가량축/기어비·부호·시각간격·유효값
GNSS경위도·높이·품질지리기준·degree/m·안테나위치·fix상태/공분산

모든 센서가 로봇 위치XYZ를 직접 측정하는 것은 아니다. IMU자세나 wheel odometry처럼 드라이버가 이미 가공한 값은 원시관측·모델·오차 원천도 함께 확인한다. 같은 원자료에서 나온 위치와 속도를 독립 센서 두 개처럼 취급하면 정보가 중복될 수 있다.

변환 방향을 고정한 뒤 공간점만 영상에 투영한다

카메라optical을 C, LiDAR프레임을 L이라 하자. 변환은 p_C=R_CL p_L+t_CL로 정의한다. R_CL은L축으로 적은 벡터를C축으로 표현하고, t_CL은L원점의C좌표다. 실제 LiDAR가body축이라면 optical축으로의 회전도 포함해야 한다. 이름만 camera로 바꾸거나 카메라 내부행렬K를 공간 회전처럼 쓰지 않는다.

손계산에서는 두 프레임이 모두x오른쪽/y아래/z앞인 평행축이라고 명시한다. R_CL=I, t_CL=(0.1,0,0)m다. p_L=(0.4,0.2,2)m라면 p_C=(0.5,0.2,2)m다. 카메라의 f_x=f_y=400px, 주점(320,240)px인 왜곡 없는 영상에서 u=400×0.5/2+320=420px, v=400×0.2/2+240=280px다. 입력점과 변환 이동이 모두m이므로 단위도 맞는다.

이번 카메라의 전방점 조건은 Z_C>0이다. Z_C=0은 투영의 나눗셈을 할 수 없고 음수는전방조건밖이다. 실제영상에서는 u/v가영상범위안인지, 관측시각/가림과 해당표면의대응이맞는지도확인한다. 투영좌표가안에있다고카메라가그점을봤다는보장은없다. 앞물체가가렸을수도있다.

t_CL의 부호를 반대로 넣으면 x_C=0.3m가 되어 u380px가 나온다. 같은K인데40px가 달라진다. 외부변환의 방향을 고치기 전에 K를 임의로 조정해 겹쳐 보이게 하면 원인을 숨길 수 있다. 전/후방·거리와 영상영역이 다른 독립 대응에서 함께 검사한다. 여기의 투영은 합성값이며 실제보정정확도실험이 아니다.

정적 장착 관계와 관측 시각은 별도다

카메라-LiDAR가 단단히 고정되어 있으면 두 센서 사이의 외부변환은 정적으로 둘 수 있다. 로봇과world의 관계는 움직임에 따라 변한다. 다른 시각의 자료를world로 옮길 때는 각 취득시각의 로봇자세가 필요하다. 최신TF가 존재한다는 사실과 해당시각의TF가 유효하다는 사실도 구분한다.

같은 시계로 보정된 카메라 취득시각10.000초와 LiDAR취득시각10.050초라면 차이는0.050초다. 단순히 같은 방향의 상대 이동속도가2m/s로 일정하다면 그동안의 차이는0.10m다. 이 계산은 시간 불일치의 크기를 보여 주며 모든점의좌표에0.1m를더하라는보정알고리즘은아니다. 회전·움직이는물체·스캔내점별시각이있으면각자료의모형이필요하다.

수신시각이 가깝다고 취득시각이 같은 것은 아니고, 숫자가 비슷해도 다른 시계일 수 있다. 원래 타임스탬프·시계식별자·수신시각·변환개정과 유효범위를 보존한다. 가까운 메시지를 골랐다는 이유만으로 움직이는 점의동일시각정합을완료했다고쓰지않는다. 상세한시계보정·멀티레이트/보간은M14.03으로연결된다.

IMU의 축·중력·미제공 값을 읽는다

ROS Jazzy Imu 공식 정의는 각속도rad/s,가속도m/s²를 명시한다. 센서가degree/s나g로 내보낸다면 ROS자료로해석하기전에변환계약이필요하다. 센서장착회전은벡터의성분을바꾸며, 위치점을옮길때처럼가속도/각속도벡터에장착이동t를그대로더하지않는다.

예를 들어 IMU의+x축이base의+y축을 향하고 +y축이base의−x축을 향하는 z축90도장착이라면 IMU각속도(1,0,0)rad/s는base(0,1,0)rad/s다. 축변환없이x값1을그대로base회전속도라고읽으면다른회전이다. 자세는어느기준방향에대한orientation인지도필요하므로, 벡터세성분변환을그대로자세변환전체로일반화하지않는다.

가속도의 중력 포함/제거 여부와 관성/지리 방향 규약도 확인한다. 정지했다고 반드시모든가속도성분이0인것은아니다. 회전중에는센서부착위치가달라가속도가다를수도있다. robot_localization 저자 준비자료는 센서메시지/축/장착/부호와공분산의일관성을확인하도록안내한다. 특정패키지설정을무검증으로옮기기보다사용중인드라이버/메시지계약을대조한다.

Imu메시지에서 어떤추정의공분산첫원소−1은그추정이제공되지않음을표시한다. 공분산전체0은공분산미상이라는규약이다. 따라서orientation_covariance[0]=−1인orientation을정확한자세로사용하거나전체0을무오차센서로읽으면안된다. 상태/가용성검사와신뢰도모델은분리한다. 불확실성의축변환과가중치는M14.04에서이어다룬다.

엔코더는 바퀴 회전이고 GNSS는 안테나 위치다

반지름r=0.1m인바퀴가Δt=0.1초동안Δθ=0.2rad회전했다고하자. 이상적인구름가정의바퀴이동은s=rΔθ=0.02m,속도s/Δt=0.2m/s다. 카운트가주어졌다면회전당카운트·기어비·부호로각도부터환산한다. 두바퀴차량의base속도/회전은좌우바퀴와차량기하모델이필요하다. 이한바퀴속도를바로로봇world속도로부르지않는다. 슬립·들린바퀴·반지름오차도남는다.

ROS Jazzy NavSatFix 공식 정의는 경위도degree와WGS84타원체기준높이m를구분한다. 지리좌표를로컬Cartesian의m좌표와직접빼지않는다. 변환시지리기준/원점·축/높이기준을명시한다. 해당메시지의위치공분산은ENU성분이며frame_id만보고위경도값이그프레임의XYZ라고추정하면안된다. fix상태와고도NaN도확인한다.

안테나와base원점은다를수있다. 이미같은worldCartesian으로변환된안테나x가10m이고,base와world축이평행하며안테나가base보다+x방향0.5m에있다면base위치는9.5m다. 장착오프셋(lever arm)을생략하면안테나위치를로봇중심위치로오해한다. 로봇이회전하면오프셋도world로회전해빼야한다. 실제경위도변환을수행한예제가아니라제공된로컬좌표의장착점계산이다.

정합을 통과한 뒤에도 독립 정보인지 확인한다

센서별로 측정량/단위·축/방향·장착위치·취득시각과시계·보정개정·유효상태·공분산의의미를기록한다. 누락TF/시각범위밖변환·미제공추정·NaN이나오면원자료와제외이유를남긴다. 원점0이나최근값으로조용히대체해새관측처럼쓰지않는다. 유효한센서가적어진사실도기록한다.

서로다른센서라도같은IMU를이미사용한wheel/visual추정결과끼리는오차가상관될수있다. 불확실성을독립으로가정해다시결합하면확신만과해질수있다. 또한같은장면의픽셀겹침을맞춘자료와검사자료로함께쓰면독립검증이아니다. 정적/직진/회전,다른거리/영상영역등의기록을나누고어떤조건에서맞고어디서실패했는지비교한다.

기존응용교재4.2/4.3의좌표/TF파이프라인을읽을때이센서계약을함께적용한다. 이단위의계산이실제멀티센서보정·EKF융합·주행안전을검증한것은아니다. 다음M14.04는입력이맞다는가정아래관측모델/공분산으로상태를갱신하는문제를다룬다.

관련 기존 자료 · 보충해서 읽기

  • 기존 상세 본문 · 관련 기존 자료 · 보충 참고

    4.2 Isaac Sim/USD, ROS 2, OpenCV 좌표 변환

    목표 일부 관련

    기존 자료의 관련 범위이며 신규 목표 전체의 품질 검수는 아직 진행하지 않았습니다.

  • 기존 상세 본문 · 관련 기존 자료 · 보충 참고

    4.3 TF2 트리 설계

    목표 일부 관련

    기존 자료의 관련 범위이며 신규 목표 전체의 품질 검수는 아직 진행하지 않았습니다.

학습 범위와 한계

기본 설명·예제가 준비되었습니다. 기존 보충 자료의 범위와 구별하세요.

실습 필수

장비 없는 실습을 수행하고 관찰·계산 근거를 해설과 비교합니다.

장비 없이 제공값을사용한다. L/C는평행optical-like축,R_CL=I,t_CL=(.1,0,0)m,p_L=(.4,.2,2)m,카메라f400px/주점320,240이다.

  1. p_C와투영픽셀을계산하고t부호를반대로쓴결과와비교한다. Z_C≤0·누락변환을어떻게처리할지도적는다.
  2. wheel반지름.1m/회전.2rad/간격.1초의이동·속도,world안테나10m/base→antenna오프셋.5m의base위치를계산한다(축평행). 카메라/LiDAR취득차.05초·상대속도2m/s가만드는차이도적는다.
  3. IMU공분산전체0/첫값−1,GNSS경위도/안테나장착,수신시각만가까운자료를정상값으로융합하려는제안을평가한다. 독립검사조건과중복정보확인방법을제시한다.

막히면센서별입력표를먼저채우고수치마다단위를붙인다. 같은종류의값과프레임/시각계약이확인된뒤비교한다. 실제센서실행이아닌합성계산임을명시한다.

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

학습 범위와 한계

기본 실습은 장비 없이 수행합니다. 실제 장비·GPU 실증을 완료했다는 뜻은 아닙니다.

평가·해설 필수

목표별 세 서술문항에 답하고 해설·판정 기준으로 자기검토합니다.

확인 문제 Q1

카메라픽셀·LiDAR점·IMU각속도·엔코더·GNSS경위도를하나의XYZ평균에넣어도되는가? 각자료에서확인할계약과IMU공분산전체0/첫원소−1의차이를설명하라.

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

확인 문제 Q2

본문의p_L(.4,.2,2)m,R_CL=I,t_CL(.1,0,0)m와f400/주점320,240으로p_C/u/v를구하라. 축평행인world안테나x10m·장착오프셋+.5m의base위치도구하고,두계산에서이동부호가다른이유를적어라.

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

확인 문제 Q3

50ms취득차를무시한채2m/s의상대운동을정적외부변환으로맞추려한다. 예상불일치와진단방법을제안하라. 같은IMU에서유래한두추정의평균을독립센서융합이라고불러도되는가?

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

학습 범위와 한계

서술답안과 해설이 준비되었습니다. 자기검토와 학습 완료는 숙달 인증과 별개입니다.

참고 자료

학습 확인

실습과 세 문항의 답안을 해설과 비교한 뒤, 이 단위의 학습 완료를 직접 기록할 수 있습니다. 자기검토·학습 완료는 자동 채점이나 숙달 인증과 별개입니다.

실습1개·확인 문제3개의 답안을 저장하고 각각 자기검토를 기록하세요.

학습 이동

학습 단계 순서 · 공통 과정 이후 전문화 선택

전체 목차로 돌아가기 →

신규 활동의 답안은 이 브라우저의 통합 학습 기록에 저장합니다. 기존 화면의 답안·진도는 원래 키를 유지합니다. AI 강사는 현재 단위의 준비 상태·부족한 범위와 연결된 실제 자료를 참고합니다.