Кіріспе

Статистикалық әдіс

Кездейсоқ үлгіде консенсус (RANSAC) – бұл математикалық модельдің параметрлерін бағалауға арналған итеративті әдіс, ол ауытқушы деректер жиынтығынан қолданылады, мұнда ауытқушы деректер бағалау мәндеріне ешқандай әсер етпейді. Сондықтан, оны ауытқушы деректерді анықтау әдісі деп те қарастыруға болады. Бұл алгоритм детерминистік емес, яғни ол белгілі бір ықтималдықпен ғана қолайлы нәтиже береді, ал бұл ықтималдық итерациялар саны артық болған сайын ұлғаяды. Алгоритм алғаш рет 1981 жылы SRI International ұйымында Фишлер және Боллес есімді ғалымдар тарапынан жарияланды. Олар RANSAC-ты орналасуды анықтау мәселесін (LDP) шешу үшін қолданды, онда мақсат – белгілі орналасқан жерлерге проекцияланатын кеңістіктегі нүктелерді анықтау. RANSAC қайталанатын кездейсоқ ішкі жиындыларды пайдаланады. Негізгі болжам бойынша, деректер «ішкі мәндерден», яғни модель параметрлерінің белгілі бір жиынтығымен түсіндірілетін деректерден тұрады, бірақ шуға ұшырауы мүмкін, және «ауытқушы деректерден» – модельге сәйкес келмейтін деректерден. Ауытқушы деректер, мысалы, шудың шекті мәндерінен, қате өлшемдерден немесе деректерді түсіндіру туралы дұрыс емес гипотезалардан туындауы мүмкін. RANSAC сондай-ақ, егер (әдетте шағын) ішкі мәндер жиынтығы болса, осы деректерді ең жақсы түсіндіретін немесе сәйкес келетін модельдің параметрлерін бағалауға болатын процедура бар деп есептейді.

Мысал

Қарапайым мысал – екі өлшемді кеңістікте бақылаулар жиынына түзу сызық жүргізу. Егер бұл жиын сызыққа шамамен сәйкес келетін нүктелер, яғни инлиерлер, және осы сызыққа сәйкес келмейтін нүктелер, яғни аутлиерлерден тұрса, түзу сызықты сәйкестендірудің қарапайым ең кіші квадраттар әдісі әдетте инлиерлер мен аутлиерлерді қоса алғандағы деректерге нашар сәйкес келетін түзу сызық береді. Бұл себебі ол барлық нүктелерге, соның ішінде аутлиерлерге де ең жақсы сәйкес келеді. Ал RANSAC аутлиерлерді жоюға тырысып, есептеуінде тек инлиерлерді пайдаланатын сызықтық модельді табуға ұмтылады. Бұл деректердің бірнеше кездейсоқ іріктемелеріне сызықтық модельдерді сәйкестендіру арқылы және деректердің ең жақсы сәйкес келетін кіші жиынына жататын модельді қайтару арқылы іске асырылады. Инлиерлер инлиерлер мен аутлиерлердің кездейсоқ араласуына қарағанда сызықтық байланыста болуға бейім болғандықтан, тек инлиерлерден тұратын кездейсоқ іріктеме ең жақсы модельге сәйкес келеді. Бірақ іс жүзінде инлиерлердің кіші жиынының кездейсоқ іріктелетініне кепілдік жоқ, және алгоритмнің сәтті болу ықтималдығы деректердегі инлиерлердің үлесіне және алгоритмнің бірнеше параметрлерін таңдауға байланысты.

Шолу

RANSAC алгоритмі – байқалған деректердің кездейсоқ үлгісін алу арқылы модель параметрлерін бағалаудың оқу әдісі. Деректер жиынтығында инлидерлер мен аутлаерлер болғанда, RANSAC дауыс беру схемасын қолданады. Деректер жиынтығындағы деректер элементтері бір немесе бірнеше модельдерге дауыс беру үшін пайдаланылады. Бұл дауыс беру схемасын іске асыру екі болжамға негізделген: шулы деректер ешбір модельге тұрақты түрде дауыс бермейді (аутлаерлердің аздығы) және жақсы модельді анықтау үшін жеткілікті деректер бар (жетіспейтін деректердің аздығы). RANSAC алгоритмі негізінен екі қадамнан тұрады, олар итеративті қайталанады: Бірінші қадамда кіріс деректер жиынтығынан минималды деректер элементтерін қамтитын үлгілік кіші жиынтық кездейсоқ таңдалады. Модель параметрлері бар сәйкестік модель осы үлгілік кіші жиынның элементтерін ғана пайдалана отырып есептеледі. Үлгілік кіші жиынның өлшемі (мысалы, осы кіші жиынтағы деректердің мөлшері) модель параметрлерін анықтау үшін жеткілікті. Екінші қадамда алгоритм кіріс деректер жиынтығының қай элементтері бірінші қадамда алынған модель параметрлерімен есептелген модельге сәйкес келетінін тексереді. Егер деректер элементі модельге сәйкес келмесе, онда ол инлидерлердің максималды ауытқуын анықтайтын қате шегі шегінде аутлаер ретінде қарастырылады. (Бұл ауытқудан тыс деректер элементтері аутлаерлер болып табылады.) Сәйкестік модель үшін алынған инлидерлер жиынтығы консенсус жиынтығы деп аталады. RANSAC алгоритмі жоғарыда аталған екі қадамды белгілі бір итерациядағы алынған консенсус жиынтығында жеткілікті инлидерлер болғанға дейін қайталайды. RANSAC алгоритміне кіріс деректер – бақыланған деректер мәндерінің жиынтығы, бақылауларға сәйкес келетін модель және аутлаерлерді анықтайтын сенім параметрлері болып табылады. Аталған RANSAC алгоритмінің жалпы сипаттамасынан гөрі егжей-тегжейлі қарастырғанда, RANSAC келесі қадамдарды қайталау арқылы мақсатына жетеді: Бастапқы деректердің кездейсоқ кіші жиынтығын таңдаңыз. Бұл кіші жиынтықты гипотетикалық инлидерлер деп атаңыз. Гипотетикалық инлидерлер жиынтығына модель орнатылады. Барлық деректер орнатылған модельмен салыстырылады. Белгілі бір модельге тән шығын функциясына сәйкес бағаланған модельге жақсы сәйкес келетін барлық деректер нүктелері (түпнұсқалық деректер) консенсус жиынтығы (яғни модель үшін инлидерлер жиынтығы) деп аталады. Консенсус жиынтығының бөлігі ретінде жеткілікті сандағы деректер нүктелері жіктелсе, бағаланған модель жеткілікті жақсы болады. Модель консенсус жиынтығының барлық мүшелерін пайдалану арқылы оны қайта бағалау арқылы жетілдірілуі мүмкін. Модельдің консенсус жиынтығына қаншалықты сәйкес келетінін өлшейтін сәйкестік сапасы модельдің сәйкестігін итерациялардың жалғасуымен (мысалы, келесі итерацияда осы өлшемені сәйкестік сапасының критерийлері ретінде орнату арқылы) жақсарту үшін қолданылады. Модель параметрлерінің жеткілікті жақсы жиынтығына жету үшін бұл процедура белгіленген санда қайталанады, әр жолы консенсус жиынтығының бөлігі өте аз нүктелер болғандықтан модель қабылданылмайды немесе бұрынғы консенсус жиынтығынан үлкен консенсус жиынтығымен жетілдірілген модель алынады.

Артықшылықтары мен кемшіліктері

RANSAC-тің артықшылығы – модель параметрлерін берік бағалау қабілеті, яғни деректер жиынтығында көптеген сыртқы мәндер (outlier) болған жағдайда да параметрлерді жоғары дәлдікпен бағалай алады. RANSAC-тің кемшілігі – осы параметрлерді есептеуге кететін уақытқа белгілі бір шек жоқ (толық тексеруден басқа). Егер есептелген итерациялар саны шектелсе, алынған шешім оңтайлы болмауы мүмкін, тіпті деректерге жақсы сәйкес келмеуі де мүмкін. Осылайша, RANSAC мүмкіндік береді; итерациялардың санын арттыру арқылы жақсы модельдің табылу ықтималдығы артады. Сонымен қатар, RANSAC орташа ластанған жиынтықтар үшін де оптималды жиынтықты табуға әрқашан қабілетті болмайды және инлиерлер саны 50%-дан төмен болған кезде нашар жұмыс істейді. Оптималды RANSAC бұл екі мәселені шешу үшін ұсынылды және ол күшті ластанған жиынтықтар үшін, тіпті 5%-дан төмен инлиер қатынасы үшін де оптималды жиынтықты таба алады. RANSAC-тің тағы бір кемшілігі – ол проблемаға қатысты нақты шектік мәндерді белгілеуді қажет етеді. RANSAC тек бір деректер жиынтығы үшін бір модельді бағалай алады. Бір модельге негізделген әдіс ретінде, егер екі (немесе одан көп) модель болса, RANSAC олардың ешқайсысын таба алмауы мүмкін. Хоуг трансформациясы – бірнеше модель болған кезде пайдалы болатын басқа бір берік бағалау әдісі. Көп модельді сәйкестендірудің тағы бір әдісі PEARL деп аталады, ол RANSAC-тегі дерек нүктелерінен модельдік үлгі алуды инлиерлерді итеративті қайта бағалаумен біріктіреді, ал көп модельді сәйкестендіру жалпы шешімнің сапасын сипаттайтын жаһандық энергия функциясы бар оңтайландыру мәселесі ретінде құрылады.

Қолданбалар

RANSAC алгоритмі компьютерлік көруде жиі қолданылады, мысалы, сәйкестік мәселесін бірден шешу және стереокамералар жұбына қатысты негізгі матрицаны бағалау үшін; сондай-ақ қараңыз: Қозғалыстан құрылымды анықтау, масштабқа тәуелсіз ерекшеліктерді түрлендіру, кескіндерді тігіп қосу, қатаң қозғалыс сегментациясы.

Даму және жетілдіру

1981 жылдан бері RANSAC компьютерлік көру және бейне өңдеу қауымдастығының негізгі құралына айналды. 2006 жылы алгоритмнің 25 жылдығына арналған компьютерлік көру және үлгілерді тану жөніндегі халықаралық конференцияда (CVPR) семинар ұйымдастырылды. Семинарда бастапқы алгоритмге енгізілген соңғы үлестер мен өзгерістер талқыланды, олардың көпшілігі алгоритмнің жылдамдығын арттыруға, есептелген шешімнің сенімділігі мен дәлдігін жоғарылатуға және пайдаланушы анықтаған тұрақтыларға тәуелділікті азайтуға бағытталған. RANSAC белгілі бір параметрлер жиынтығымен құрылған модельге сәйкес келетін дерек нүктелерін анықтау үшін дұрыс шу шегін таңдауға сезімтал. Егер бұл шек тым жоғары болса, барлық гипотезалар бірдей жақсы деп бағаланады. Ал шу шегі тым төмен болса, есептелген параметрлер тұрақсыз болады (яғни, ішкі нүктелер жиынтығына бір дерек нүктесін қосу немесе алып тастау нәтижесінде параметрлердің бағасы өзгеруі мүмкін). Бұл жағымсыз әсерді ішінара жою үшін Torr және авторлар MSAC (M бағалаушысы, үлгі және консенсус) және MLESAC (максималды ықтималдық бағалауы, үлгі және консенсус) деп аталатын RANSAC-тің екі модификациясын ұсынды. Негізгі идея – консенсус жиынтығының сапасын бағалау (яғни, модельге және белгілі бір параметрлер жиынтығына сәйкес келетін деректер) оның ықтималдығын есептеу (ал Фишлер мен Боллстің бастапқы тұжырымдамасында рейтинг мұндай жиынтықтың кардиналдығы болды). Tordoff кіріс деректер жиынтығымен байланысты алдын ала ықтималдықтарды ескеретін MLESAC-тің кеңейтілген нұсқасын ұсынды. Нәтижесінде пайда болған алгоритм Guided MLESAC деп аталды. Осыған ұқсас, Чам кіріс деректері туралы кейбір априорлық ақпарат белгілі болған жағдайда, мысалы, дерек нүктесінің ішкі немесе сыртқы мән болуы мүмкін болса, үлгі алу процедурасын басқаруды ұсынды. Ұсынылған тәсіл PROSAC, PROgressive Sample Consensus деп аталды. Чам және авторлар жақсы консенсус жиынтығын анықтау үшін есептеу жүктемесін азайту мақсатында RANSAC-тің кездейсоқ нұсқасын, R RANSAC деп атады. Негізгі идея – қазіргі үлгінің жақсылығын бастапқыда барлық деректер жиынтығының орнына, төмендетілген нүктелер жиынтығын қолдана отырып бағалау. Дұрыс стратегия, бүкіл деректер жиынтығының сәйкестігін бағалау қажеттігін немесе модельді дереу қабылдамау қажеттігін жоғары сенімділікпен анықтайды. Бұл тәсілдің әсері ішкі нүктелердің үлесі жоғары жағдайларда маңыздырақ болуы мүмкін. Чам және авторлар ұсынған стратегияның түрі алдын алу схемасы деп аталады. Nistér сценаның құрылымы мен камераның қозғалысын нақты уақытта сенімді бағалауға мүмкіндік беретін Preemptive RANSAC деп аталатын парадигманы ұсынды. Тәсілдің негізгі идеясы – салыстыру абсолютті сапа метрикасына емес, жасалған гипотезаның сапасына қатысты болуы үшін, гипотезалардың белгіленген санын жасаудан тұрады. Басқа зерттеушілер шу деңгейі белгісіз және/немесе бірнеше модель мысалы бар қиын жағдайларды шешуге тырысты. Бұл мәселені Ван мен Сьютер өз жұмысында қарастырды. Toldo және авторлар әрбір дерек нүктесін сол нүктеге сәйкес келетін кездейсоқ модельдер жиынтығының сипаттамалық функциясымен бейнеледі. Содан кейін бірнеше модельдер кластерлер түрінде ашылады, олар бір модельді қолдайтын нүктелерді топтастырады. J байланысы деп аталатын кластерлеу алгоритмі модельдер санын алдын ала анықтауды қажет етпейді, сондай-ақ параметрлерді қолмен реттеуді қажет етпейді. RANSAC рекурсивті күйді бағалау қолданбалары үшін де бейімделді, онда кіріс өлшемдері сыртқы мәндермен бұзылады және өлшеу қателігінің Гаусс таралуына сүйенетін Калман сүзгісі тәсілдері сәтсіздікке ұшырайды. Мұндай тәсіл KALMANSAC деп аталады.