roboforum.ru

Технический форум по робототехнике.
Текущее время: 08 май 2025, 15:55

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Выбор среды разработки для OpenCV
СообщениеДобавлено: 06 июн 2012, 08:29 
Не в сети

Зарегистрирован: 24 авг 2010, 11:48
Сообщения: 135
Откуда: Минск
прог. языки: C++,C,Asm
Не могли ли бы вы подсказать какую среду разработки лучше выбрать для написания приложения по управлению роботом?
Робот:
- роутер WR703N с прошивкой OR-WRT;
- Ethernet камера, подключенная к роутеру на борту;
- Arduino Mega с подключением к роутеру через USB. Ком-порт транслируется по сети, а я его ловлю и эмулирую на компе при помощи HW Virtual Serial Port;

Требования к программе(по важности):
- С++; (другими не владею ;) )
- поддержка OpenCV (основная цель);
- удобоваримая структура приложения и простота создания и работы с интерфейсом пользователя;
(В этом отношении меня расстроил очень VS C++ и его CLR-проекты. Вроде всё как в Borland Builder, но структура программы через _опу. Я всё заточено прежде всего для C#)
- наличие компонента для асинхронной работы с ком-портом; (опять же CLR имеет его, но всё через _опу)
- наличие компонента для работы с USB джойстиком; (желательно)

Я склоняюсь к VS C++ 2010+OpenCV+wxWidgets. Но не уверен. По шагам:
- С++; Да
- поддержка OpenCV; Да
- удобоваримая структура приложения и простота создания и работы с интерфейсом пользователя; Да.
- наличие компонента для асинхронной работы с ком-портом; Не нашел пока реализации!
- наличие компонента для работы с USB джойстиком; Есть встроенная

Хочу услышать мнения людей прошедших через это всё. Прав ли я в своем выборе или нет? Почему? Какие подводные камни?

P.S. Эх зря нет OpenCV под Builder :( Всё бы решило.

Заранее спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 06 июн 2012, 08:35 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Есть еще QtCreator с кроссплатформенностью.

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 06 июн 2012, 08:44 
Не в сети
Аватара пользователя

Зарегистрирован: 21 май 2007, 22:57
Сообщения: 600
Откуда: Калининград
прог. языки: C++
я использую VC++ :)
работу с джойстиком можно организовать через SDL.
для работы с последовательным портом, у меня есть класс, который я использую в своём кроссплатформенном мини-фреймворке, который работает с OpenCV и затачивается именно для робо-приложений.
(недавно добавил туда класс и для получения видеопотока от MJPG-streamer)
если интересно - в ближайшее время постараюсь выложить :)

_________________
RoboCraft.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 06 июн 2012, 08:47 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
Tsi329 писал(а):
Ком-порт транслируется по сети, а я его ловлю и эмулирую на компе при помощи HW Virtual Serial Port;
Tsi329 писал(а):
- наличие компонента для асинхронной работы с ком-портом; Не нашел пока реализации!

И не надо! Отменить эмуляцию порта = это абсолютно не нужный костыль! И работать напрямую через TCP сокет - поддержка асинхронной работы с сокетами должна быть в чем угодно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 06 июн 2012, 16:31 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
дададада
в Qt например ничем не отличается работа с ком-портом и с ТСП-сокетом. методы те же, формат данных тот же...

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 06 июн 2012, 17:19 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
"структура программы через _опу" :D так мило. а ничего, что в vs/qt/eclipse/borland... можно создавать пустой проект, добавить в него всё необходимое и создавать "структуру программы не через опу"? а если еще вспомнить, что визард тупо копирует заранее созданый проект, можно за пол часика набросать свой и пользоваться. и да, выбирать среду разработки исходя из того, что там есть/нет одного-двух простеньких класса, которые при знании языка написать совсем не сложно... круть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 10 июн 2012, 18:07 
Не в сети

Зарегистрирован: 24 авг 2010, 11:48
Сообщения: 135
Откуда: Минск
прог. языки: C++,C,Asm
=DeaD= писал(а):
Есть еще QtCreator с кроссплатформенностью.

Есть. Подскажите, в чем сакраментальная разница между Qt и wxWindows. Что бы посоветовали использовать? Почему?
Кроссплатформенность не интересует.

Добавлено спустя 2 минуты 30 секунд:
noonv писал(а):
я использую VC++ :)
работу с джойстиком можно организовать через SDL.

Согласен. Хорошая идея. Хотя и придется "тянуть" с собой еще одну библиотеку.
noonv писал(а):
для работы с последовательным портом, у меня есть класс, который я использую в своём кроссплатформенном мини-фреймворке, который работает с OpenCV и затачивается именно для робо-приложений.
(недавно добавил туда класс и для получения видеопотока от MJPG-streamer)
если интересно - в ближайшее время постараюсь выложить :)

Очень буду обязан, если пришлешь лично или выложишь на форуме!

Добавлено спустя 2 минуты 58 секунд:
elmot писал(а):
И не надо! Отменить эмуляцию порта = это абсолютно не нужный костыль! И работать напрямую через TCP сокет - поддержка асинхронной работы с сокетами должна быть в чем угодно.

Я только за! Но заново изобретать очередной велосипед не хочу. Дай plz ссылку или пришли свои наработки. Сам считаю, что виртуализировать ком-порт только для того, чтобы из него взять данные - лишние шаги. Но нужен пример реализации. Иначе игра не стоит свеч. Угадывать протокол на основе линуксовых исходников ser2net занятие очень трудоемкое. Есть наработки или готовые решения? Буду очень рад!

Добавлено спустя 1 минуту 25 секунд:
dccharacter писал(а):
дададада
в Qt например ничем не отличается работа с ком-портом и с ТСП-сокетом. методы те же, формат данных тот же...

Спасибо. Сам, я так понимаю, пишешь под Win+OpenCV+Qt. Расскажи plz о своей реализации. Мне очень интересно. Заранее спасибо.

Добавлено спустя 15 минут 57 секунд:
Angel71 писал(а):
"структура программы через _опу" :D так мило. а ничего, что в vs/qt/eclipse/borland... можно создавать пустой проект, добавить в него всё необходимое и создавать "структуру программы не через опу"?
а если еще вспомнить, что визард тупо копирует заранее созданый проект, можно за пол часика набросать свой и пользоваться.

В этом и вся прелесть. Надеюсь, что ты не будешь отрицать это? Если твой проект, например нацелен на работу с БД, то ты, как программист, не должен "замарачиваться" о создании диалоговых окон, о событиях отрисовки кнопок и о прочей ерунды, которую, например, навязывает MFC. Программист должен быть нацелен на работу з БД и только с ней.
Конечно, можно до хрипоты спорить, что WinAPI, например, позволяет реализовать почти всё, но какой ценой. И почему я должен позволять своим программистам в отделе разрабатывать с нуля в WinAPI то, что на Delphi набросать пара минут.
Angel71 писал(а):
и да, выбирать среду разработки исходя из того, что там есть/нет одного-двух простеньких класса, которые при знании языка написать совсем не сложно... круть.

При знании асма можно написать всё! Решительно всё. Вопрос какой ценой.
А заставлять людей писать пару классов там - для джоя, пару классов там - для ком порта, и пару классов там для работы, например, с socket-ами, пустая трата времени! Всё давно написано раз сто. Незачем писать всё с нуля. Просто необходимо найти правильные готовые реализации, а самому на целится на главную задачу - алгоритм поведения робота в динамически изменяющимся пространстве.

И вообще, я, конечно, староват уже для абсолютно новых решений, но CLR выносит мне мозг. Обрабатывать события элементов интерфейса (типа кнопок и прочей ерунды) в MainForm.h файле - header file - это сила! На такое способен только Microsoft.
Вот поэтому я говорю: "структура программы через _опу"
P.S. Еще раз повторюсь, если бы OpenCV интегрировался в Builder C++, то я бы здесь вопросы эти на задавал. Там всё есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 10 июн 2012, 19:15 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
вы до сих пор используете mfc и накидываете примитивные интерфейсы перетаскиванием готовых компонент? :) мило. хотя дело ваше, на вкус и цвет фломастеры разные.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 10 июн 2012, 21:36 
Не в сети

Зарегистрирован: 24 авг 2010, 11:48
Сообщения: 135
Откуда: Минск
прог. языки: C++,C,Asm
Angel71 писал(а):
вы до сих пор используете mfc и накидываете примитивные интерфейсы перетаскиванием готовых компонент? :) мило. хотя дело ваше, на вкус и цвет фломастеры разные.

Господа, ну это уже троллинг в явном виде. Ни слова по существу! Даже наоборот - искажаются мои слова. Я в явном виде указал свою "нелюбовь" к MFC и своё "непонимание" CLR. Честно говоря, я ожидал совсем иного от человека с более четырьмя тысячами сообщений на этом форуме. :no:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 11 июн 2012, 03:54 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
не многовато от других ждёте, когда при всей своей любви к билдеру вы его до сих пор не подружили с opencv? не нравиться троллинг? задумайтесь об оверквотинге и нежелании вспоминать другие гласные/негласные правила публикации тем и сообщений на форумах (сначала ищем ответы, потом задаём вопросы). :) хотя это лирика, по существу тоже можно. c++ билдер (6й, ..., xe2) прекрасно дружит с opencv. для opencv в данном случае даже не нужно создавать заголовочные или библиотечные файлы из dll`ок. и из исходников компилировать ничего тоже не нужно. максимум - это сконвертировать либ файлы или просто скачать архив со всем необходимым. :wink: давно уже всё сделано за вас и по пунктам разжевано.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 11 июн 2012, 17:52 
Не в сети
Аватара пользователя

Зарегистрирован: 16 май 2009, 12:50
Сообщения: 1530
Откуда: Россия
прог. языки: Java, C
Если я не ошибаюсь - дед дружил билдер с опенцв, даже в вике статья была :pardon:
ТС холиварщик инфасто

_________________
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 11 июн 2012, 17:54 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Ну его нафиг дружить Delphi с OpenCV, вспоминаю как страшный сон :)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 11 июн 2012, 23:07 
Не в сети

Зарегистрирован: 24 авг 2010, 11:48
Сообщения: 135
Откуда: Минск
прог. языки: C++,C,Asm
=DeaD= писал(а):
Ну его нафиг дружить Delphi с OpenCV, вспоминаю как страшный сон :)

К сожалению абсолютно согласен.
Вот что пишет админ сайта http://www.compvision.ru/ Smorodov, мнение которого я всецело уважаю.
Цитата:
Билдер поддерживает Opencv не без проблем, не поддерживается C++ интерфейс.
Если проект небольшой, то можно и в билдере, для чего то побольше, и посерьезнее он не годится, сам мучаюсь, но заставляю себя все делать в студии, надо учиться.

Поэтому лучше vs2010 и/или QT, меньше будет проблем с совместимостью и в последующем сопровождении.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 13 июн 2012, 12:05 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
2Tsi329, есть ряд неудобств, которые решаются различными техниками. нужны только знания и желание, а на нет и ... сами знаете.
п.с. что же будет, когда у вас не будет заголовочных файлов, исходников и документации, а будет только хорошо обфусцированная библиотека?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выбор среды разработки для OpenCV
СообщениеДобавлено: 16 июн 2012, 19:41 
Не в сети

Зарегистрирован: 24 авг 2010, 11:48
Сообщения: 135
Откуда: Минск
прог. языки: C++,C,Asm
Вроде всё. С версией среды разработки определился: VC2010+QT+OpenCV+SDL

Всё собрал из сырцов, кроме SDL - идет в бинарниках, и успешно скомпоновал в один проект. Пока тестовый.
Спасибо, noonv, за идею считывать положение джойстика при помощи SDL. Реализовал - работает.
Спасибо, elmot, за идею работы с ser2net через сокет. Реализовал на QT - работает.
Спасибо всем, кто посоветовал выбрать QT. Шикарная библиотека. Есть почти всё. Реализовано просто замечательно. Работает на vc2010 как родная. Я просто в восторге от нее!

В настоящий момент работа на проектом только началась. Есть поддержка джойстика, работа с ser2net роутера и выводится окно OpenCV с ethernet камеры. Как только я этот тестовый проект переведу в рамки рабочего - читай перепишу с нуля, то обязательно выложу на форум.

noonv, в любом случае очень заинтересован посмотреть на твой проект. Как у тебя будет получаться, выложи, пожалуйста.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO