Что-то я не пойму. Есть OpenCV Version 2.0, а народ советует версию 1.0. - родную интеловскую. В чем тут дело? М.б. подскажете? А есть и 1.1. преальфа. Так какой нужно пользоваться?
По крайней мере сначала лучше пользовать 1.0. Дело в том, что до этой версии в проекте работали инженеры интел и они делали очень качественный продукт обеспечив его всестороннее тестирование, а последние версии тестируют абы как и в итоге куча проблем у народа на разных конфигурациях софта и железа из-за тупо глюков в библиотеке. Поэтому если не надо никаких изысков из последних версий - лучше с ними не связываться.
Вылетает на дамп памяти и проц и стоит стрелка на comobj. Если отдельно запускаю экзешник, то пишет CXCORE096.DLL не найден. Но в проекте есть cxcore097.dll
Вчерне прикрутил к AIAssistant OpenCV. Теперь нужно придумать и сделать набор команд на ECLIPS, чтобы было удобно пользоваться функциями OpenCV. Я пока еще не разбирался, что и в каком виде из OpenCV можно и нужно подавать в другие части программы, чтобы начать заниматься образами, навигацией, поведением. Буду разбираться. М.б. кто-то полезное что тут скажет? Как сделаю начальный набор команд и простой пример использования, выложу на сайте для пробы если кому-то это будет интересным.
Последний раз редактировалось Виктор Казаринов 12 ноя 2009, 10:56, всего редактировалось 1 раз.
Могу только сказать, что хорошо, что вы начали этим заниматься, т.к. это и есть одна из самых больших проблем - стыковка непрерывной реальности с дискретной машиной логического вывода
Кстати, по поводу полезного - а может вы огласите, с какими сложностями столкнулись при такой попытке стыковки? Или пока просто не представляете с какой стороны зайти?
Стыковка библиотеки OpenCV V 1.0 и C++ Builder 2009? Я для себя тщательно записал все шаги, т.к. у меня память - "один бит и тот бит". Если кому то интересно, напишу. Но в основном все похоже на выложенные материалы в интернете. Только мелочей там не прописали и я был невнимателен.
Механизмов стыковки несколько. Первый - это операторы на языке ECLIPS. С этого в общем то все начинается. Видимо будет несколько групп операторов. 1. Инициализирующие. 2. Управляющие. 3. Информационные. Но для полного раскрытия возможностей системы, основанной на правилах нужно реализовать второй механизм - чтобы события, происходящие в OpenCV приводили к появлению новых фактов или к изменению слотов объектов языка COOL, кот. является составной частью языка ECLIPS. Так я уже делал, когда стыковал CLIPS с GUI.
Что-то я второй день вокруг да около OpenCV хожу, а пока не пришел ни к какому выводу, в каком направлении в первую очередь рыть при стыковке с правилами. Нужно определиться с задачами. Возможно, это навигация. Или что-то другое? Если навигация, то какие части OpenCV желательно использовать. Мнения есть? Народ тут уже пару лет вокруг этого OpenCv ходит. Думаю, что Dead или другие имеют уже устойчивое мнение.
Если навигация - можно юзать распознавание моё QCode-маяков + Калмана который уже в OpenCV, и сделать на этом SLAM-навигатор простейший. Но только какое отношение это будет иметь к машинам логического вывода - я х.з.
Надо бы сначала определиться, пусть мы знаем свои точные координаты - как в этом виде нам объясняют, что мы на кухне и где пределы кухни, как потом мы понимаем что на кухне?
И вообще - у нас есть датчик тепла на шупальце как мы понимаем горячо-холодно? Как это всё работает с машиной логического вывода?
В конечном счете на самом высоком уровне нужно решить несколько зрительных задач. 1. Идентификация. Сопоставление видимого изображения с понятием (индивидуалом онтологии) - символом данного объекта мира. Например, можно идентифицировать конкретное место кухни. 2. Классификация. Отнесение видимого на изображении образа в. т.ч. видимого впервые к какому-либо классу в онтологии. 3. Определение физических характеристик мира. Например, положение в пространстве, поворот, положение относительно робота, характер освещения и т.д. Но для такой работы нужно уточнить, что передавать из OpenCV в Rule Engine.