И аз гласувам да го направиш чрез посредник. Няма да го усложни, а пък така ще се образува отделно, специализирано модулче. Мислех относно алгоритъма и за следене на линия- според мен по-важно ще бъде намирането на центъра на линията (т.е. средата м/у двата ръба ). Така ще се образуват "точки", които роботът трябва да посети. Също така ще може да се свържат например n-тата точка с n+10, да се изследва, дали няколко от съседните точки се намират в толерансна далечина от тази линия. Ако всичко е напред- получава се реално траектрията на робота, ако ли пък има центри на линията, намиращи се отдалечено (в случай че пистата е по-трудна и с променлива дебелина/ някакво странно отражение ) то се прави същото по-горно изследване за например вектора [n,n+5] или където е намерен проблема.
Като сините точки са средите на линията (което реално ще са в пъти повече), а червената линия траекторията на робота. Също трябва да се има в предвид това, че след завиване, ъгълът под който се гледат далечните точки ще бъде изменен и чрез настройване на толеранса, могат дори да се преминат заблуждаващите перпендикулярни линии, без да се отклонява от правилния път.
Така ще се избегне и деформирането на изображението от перспективата (не че за такова малко раз-е ще се проличи).
П.П. Каква е височината на центъра на камерата(предполагам 70-80mm), за да се помисли под какъв ъгъл е хубаво да бъде сложена (ако е под 90' спрямо хорисонталата както е сега ще се вижда прекалено много ненужна информация т.е. полезрението ще бъде ограничено). При ъгъл от 45' и 70 мм височина горния ъгъл на камерата ще вижда 192мм напред, а долния 24 мм пред робота (ако разбира се полезрението на камерата е 52'). При 90' blind зоната ще е на до 144 мм пред робота. Т.е. трябва да кара по памет.
edit : Отностно алгоритъма се замислих, че няма смисъл на се цепи кадъра на части ( от н до н+и ). По-добре да се пусне 1 рекурсивна ф-я (с по-горните условия) от най-горния до най-долния ред в търсенето само на първия вектор. Така или иначе докато го измине, ще е "дошъл" следващият кадър и отново ще се промени траекторията .