Жартылай ғаламдық сәйкестік - Semi-global matching - Wikipedia

Жартылай ғаламдық сәйкестік (SGM) Бұл компьютерлік көру алгоритм тығыздықты бағалау үшін теңсіздік а. картасы түзетілді стерео кескін жұбы, 2005 жылы Хейко Хиршмюллер жұмыс істеп жүргенде енгізген Неміс аэроғарыш орталығы.[1] Оның болжамды жұмыс уақыты, нәтижелер сапасы мен есептеу уақыты арасындағы қолайлы өзара есеп айырысу және жылдам параллельді іске асыруға жарамдылығы ASIC немесе FPGA, ол кең қабылдауға тап болды шынайы уақыт сияқты стерео көру бағдарламалары робототехника және жүргізушілерге көмек көрсетудің жетілдірілген жүйелері.[2][3]

Мәселе

Пиксельдік стерео сәйкестік бір стерео кескіндегі әрбір пиксельдің екінші стерео кескіннің ішкі жиыны ішіндегі әр пиксельге ұқсастығын өлшеу арқылы нақты емес уақыттағы сәйкессіздік карталарын есептеуге мүмкіндік береді. Координаталары бар пиксель үшін түзетілген стерео кескін жұбы берілген басқа кескіндегі пиксельдер жиыны әдетте ретінде таңдалады , қайда теңгерімсіздіктің максималды ауысуы.[1]

Ең жақсы сәйкес келетін пикселді қарапайым іздеу көптеген жалған сәйкестіктерді тудырады және бұл проблеманы көршілес пикселдер арасындағы диспропорцияға секірулерді жазалайтын регуляризация терминін қосқанда жеңілдетуге болады, өзіндік құны функциясы түрінде

қайда пиксел бойынша пикселге сәйкес келмейтін шығындар диспропорциямен , және пикселдер арасындағы регуляция құны және диспропорциялармен және сәйкесінше, барлық жұп көршілес пиксельдер үшін . Мұндай шектеуді пайдалану арқылы сканерлеу үшін тиімді түрде қолдануға болады динамикалық бағдарламалау (мысалы Viterbi алгоритмі ), бірақ мұндай шектеулер тереңдік картасында сызылған артефактілерді енгізе алады, өйткені сканерлеу сызықтары бойынша аз регуляризация орындалмайды.[4]

Мүмкін болатын шешім - 2D-де жаһандық оңтайландыруды орындау, алайда NP аяқталды жалпы жағдайда проблема. Кейбір отбасылар үшін шығындар функциясы (мысалы, модульдік функциялар ) оңтайлылық қасиеттері күшті шешімді полиномдық уақыт ішінде табуға болады графикалық кесуді оңтайландыру дегенмен, мұндай ғаламдық әдістер нақты уақыт режимінде өңдеу үшін өте қымбат.[5]

Алгоритм

Сегіз бағыт бойынша екі реттік SGM есептеу кезінде шығындарды жинақтау үлгісін иллюстрациялау.

SGM-дің мақсаты көптеген бағыттар бойынша желіні оңтайландыру және жиынтық шығындарды есептеу болып табылады пикселге жету үшін шығындарды қосу арқылы диспропорциямен әр бағыттан. Бағыттардың саны алгоритмнің жұмыс істеу уақытына әсер етеді және әдетте 16 бағыт жақсы сапаны қамтамасыз етсе, тезірек орындалуға қол жеткізу үшін төменгі санды қолдануға болады.[6] Алгоритмнің әдеттегі 8 бағытты жүзеге асыруы шығындарды екі өтуде есептей алады, алға, солға, солдан, солға, жоғарыдан және оңнан, ал артқа қарай, оңнан, төменнен -. оң, төменгі және төменгі сол жақ.[7] Бір реттік алгоритмді тек бес бағыт бойынша жүзеге асыруға болады.[8]

Құны сәйкес келетін мерзіммен жасалады және екілік регуляция мерзімі . Біріншісі принцип бойынша кез-келген жергілікті ұқсамау шарасы болуы мүмкін, ал жалпы қолданылатын функциялар - абсолюттік немесе квадраттық интенсивтік айырмашылық (әдетте пикселдің айналасындағы терезеде және егер жоғары өткізу сүзгісі инвариантты жарықтандыру үшін кескіндерге), Берчфилд пен Томасидің ұқсастығы, Хамминг қашықтығы туралы санақ түрлендіру, Пирсон корреляциясы (нормаланған кросс-корреляция ). Тіпті өзара ақпарат пиксельдің қосындысы ретінде жуықтап, осылайша жергілікті ұқсастық көрсеткіші ретінде қолданыла алады.[9] Реттеу мерзімі формасы бар

қайда және екі тұрақты параметр болып табылады . Үшжақты салыстыру диспаративтіліктің унитарлы өзгерістері үшін кішірек айыппұл тағайындауға мүмкіндік береді, осылайша сәйкес келетін тегіс өтуге мүмкіндік береді. көлбеу беттерге және тұрақты айыппұл мерзіміне байланысты үзілістерді сақтай отырып, үлкен секірулерге айыппұл салу. Үзіліссіздікті одан әрі сақтау үшін қарқындылық градиентін айыппұл мерзімін бейімдеу үшін қолдануға болады, өйткені тереңдіктегі үзілістер әдетте кескін қарқындылығының үзілуіне сәйкес келеді , орнату арқылы

пикселдердің әр жұбы үшін және .[10]

Жинақталған шығындар бұл барлық шығындардың жиынтығы пикселге жету үшін диспропорциямен бағыт бойынша . Әрбір терминді рекурсивті түрде былайша өрнектеуге болады

алдыңғы пиксельдегі минималды шығындар сандық тұрақтылық үшін алынып тасталады, өйткені ол ағымдық пиксельдегі диспропорцияның барлық мәндері үшін тұрақты, сондықтан ол оңтайландыруға әсер етпейді.[6]

Әр пиксельдегі диспропорцияның мәні келесі түрде беріледі , және суб-пиксель дәлдігіне қисықты орнату арқылы қол жеткізуге болады және оның көршілес шығындары және қисық бойымен минималды алу. Стерео жұптағы екі кескінге есептеулер симметриялы түрде жүргізілмегендіктен, үйлесімділікті тексеруді диспропорцияны екінші рет екінші бағытқа қарсы бағытта жүргізіп, сол және оң кескіннің рөлін ауыстырып, нәтижені нәтиже үшін жарамсыз деп санауға болады. пикселдер, мұнда нәтиже екі есептеуден ерекшеленеді. Диспропорцияны нақтылау үшін өңдеуден кейінгі келесі әдістерге мыналар жатады морфологиялық жоғары деңгейлерді жою үшін сүзгілеу, текстурасыз аймақтарды нақтылау үшін интенсивтіліктің сәйкестігін тексеру және консистенцияны тексерумен жарамсыз пикселдерді толтыру үшін интерполяция.[11]

Шығындар көлемі барлық мәндері үшін және қолдану арқылы алдын-ала есептеуге және толық алгоритмді жүзеге асыруға болады мүмкін диспропорцияның ығысуы және бағыттар, кейіннен әрбір пиксель барылады рет, сондықтан есептеу күрделілігі өлшемді кескін алгоритмі болып табылады .[7]

Жадтың тиімді нұсқасы

SGM-нің басты кемшілігі оның жадыны тұтынуында. Алгоритмнің екі бағыттан тұратын 8 бағытты нұсқасын орындау үшін сақтау қажет элементтер, өйткені жинақталған өзіндік құн мөлшері болады және әр өту кезінде пиксель құнын есептеу үшін оны қадағалап отыру қажет сол немесе оң жақ көршісінің бір бағыттағы және бағыттағы жол шығындары 3 бағыт бойынша жоғарыда немесе төменде жолдағы пикселдердің жол шығындары.[7] Жадының шығынын азайтудың бір шешімі - мәндерді қабаттасқан аймақтар бойынша интерполяциялап, ішінара қабаттасқан кескін тақтайшаларында SGM есептеу. Бұл әдіс SGM-ді бірінші кезекте жадқа сыймайтын өте үлкен кескіндерге қолдануға мүмкіндік береді.[12]

Әр пиксель үшін SGM-ді жадқа тиімді жақындату барлық мүмкін диспропорция мәндерінің орнына тек кейбір бағыттар бойынша минималды көрсететін диспропорция мәндерінің шығындарын ғана құрайды. Шынайы минимум сегіз бағыт бойынша минимуммен болжануы ықтимал, осылайша нәтижелердің ұқсас сапасы пайда болады. Алгоритм сегіз бағыт пен үш өтуді қолданады және бірінші өту кезінде әр пиксель үшін төрт жоғарыдан төмен бағыт бойынша оңтайлы диспропорцияға шығындар, сонымен қатар екі жақын және төменгі мәндер қосылады (субпиксельді интерполяция үшін). Шығындар көлемі сирек сақталатындықтан, оңтайлы диспропорцияның төрт мәнін де сақтау қажет. Екінші өтуде қалған төрт төменнен жоғары бағыттар есептеліп, бірінші өтуде таңдалған төрт сәйкессіздік мәні бойынша есептеулер аяқталады, олар қазір барлық сегіз бағыт бойынша бағаланды. Шығын мен диспропорцияның аралық мәні бірінші өтудің нәтижесінен есептеледі және сақталады, ал бірінші өтуден шыққан төрт шығыс жады төрт оптималды сәйкессіздік мәнімен және олардың екінші жолдағы бағыттар бойынша шығындарымен ауыстырылады. Үшінші жол екінші өтудегі сәйкессіздік мәндеріне есептеулерді аяқтай отырып, бірінші өтуде қолданылған бағыттар бойынша қайтадан жүреді. Содан кейін соңғы нәтиже үшінші пастан төрт минимумға және екінші пас кезінде есептелген аралық нәтижеге таңдалады.[13]

Әр өткізілімде үш диспропорция мәні сақталады, олардың әрқайсысы үш шығын мәндерімен (минимум және оның екі жақын көршілес шығындары), сонымен қатар аралық нәтиженің диспропорциясы мен шығын мәндерін қосқанда, әрбір пиксель үшін барлығы он сегіз мән, барлығы жадты тұтыну , кескіннің үстінен қосымша өту кезінде.[13]

Сондай-ақ қараңыз

Әдебиеттер тізімі

  1. ^ а б Хиршмюллер (2005), 807-814 бб
  2. ^ Хиршмюллер (2011), 178–184 бб
  3. ^ Спангенберг және басқалар. (2013), 34-41 б
  4. ^ Хиршмюллер (2005), б. 809
  5. ^ Хиршмюллер (2005), б. 807
  6. ^ а б Хиршмюллер (2007), б. 331
  7. ^ а б c Хиршмюллер және басқалар. (2012), б. 372
  8. ^ «OpenCV cv :: StereoSGBM сыныбы». Архивтелген түпнұсқа 2019-10-05.
  9. ^ Ким және басқалар. (2003), 1033–1040 бб
  10. ^ Хиршмюллер (2007), б. 330
  11. ^ Хиршмюллер (2007), б. 332-334
  12. ^ Хиршмюллер (2007), б. 334-335
  13. ^ а б Хиршмюллер және басқалар. (2012), б. 373
  • Хиршмюллер, Хейко (2005). «Жартылай ғаламдық сәйкестендіру және өзара ақпарат арқылы дәл және тиімді стерео өңдеу». IEEE конференциясы - компьютерлік көзқарас және үлгіні тану. 807–814 бб.
  • Хиршмюллер, Хейко (2007). «Жартылай ғаламдық сәйкестендіру және өзара ақпарат арқылы стерео өңдеу». Үлгіні талдау және машиналық интеллект бойынша IEEE транзакциялары. IEEE. 30 (2): 328–341. дои:10.1109 / TPAMI.2007.1166. PMID  18084062.
  • Хиршмюллер, Хейко (2011). «Жартылай ғаламдық сәйкестендіру, әзірлемелер және қосымшалар». Фотограмметриялық апта. 11. 173–184 бб.
  • Хиршмюллер, Хейко; Будер, Максимилиан; Эрнст, Инес (2012). «Жадының тиімді жартылай ғаламдық сәйкестігі». ISPRS жылнамалары фотограмметрия, қашықтықтан зондтау және кеңістіктік ақпараттану. 3: 371–376. Бибкод:2012ISPAn..I3..371H. дои:10.5194 / isprsannals-I-3-371-2012.
  • Ким, Джунхван; Колмогоров, Владимир; Забих, Рамин (2003). «Энергияны минимизациялау және өзара ақпаратты қолдану арқылы көрнекі хат-хабарлар». IEEE тоғызыншы компьютерлік көру жөніндегі халықаралық конференция материалдары. 1033–1040 бб.
  • Спангенберг, Роберт; Лангнер, Тобиас; Рохас, Рауль (2013). «Жүргізушілерге сенімді көмек көрсету үшін салмақты жарты глобалды сәйкестендіру және орталық-симметриялы санақ түрлендіруі». Суреттер мен өрнектерді компьютерлік талдау бойынша халықаралық конференция. 34-41 бет.

Сыртқы сілтемелер