Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 6

Выполнение команды после определения цвета

15.05.2013, 17:51. Показов 1121. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, форумчане, обращаюсь к вам за помощью. В общем я делаю курсовую и передо мной стоит задача сделать управление роботом на arduino через форму, так же вывести видео изображение в эту же форму с с целью определения заданного какого-либо цвета, после которого мой робот выполнил бы определенные действия( пример, подношу красный шарик, он определяет его цвет, раннее заданный, и начинает руками двигать; поднес синий предмет, он начал головой отнекиваться).Проблема заключается у меня в том, что я не могу понять как прописать код на то, чтобы можно было задать цвет и приписать к нему команду робота, которая будет выполняться после его определения. Определение цвета я уже сделал, то есть задаю его в фильтре и он его определяет. Но как связать это?
Надеюсь, я внятно попробовал объяснить, что у меня за случай, и в чем заключается мое обращение к Вам.Буду благодарен за любую помощь с вашей стороны.К тексту прилагаю мой проект.Спасибо.
Вложения
Тип файла: rar Курсовая_Картоид.rar (275.9 Кб, 5 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.05.2013, 17:51
Ответы с готовыми решениями:

После команды start батник прекращает выполнение. Как запустить 2 команды start?
Я хочу одним кликом на батник запускать сразу и BrowserSync, и Sublime Text. Однако, запускается лишь что-то одно так как после команд...

Выполнение команды после завершения цикла
void __fastcall TForm3::Button3Click(TObject *Sender) { /* 16. Из заданного списка слов удалить слова, содержащие заданную...

Выполнение команды в Form1 после закрытия Form2
Доброго времени суток как сделать так что б после закрытия Form2 в Form1 выполнялась команда???

3
51 / 51 / 8
Регистрация: 31.10.2012
Сообщений: 481
18.05.2013, 10:32
А при чем тут C#, если тут микропрограммирование под само устройство?
0
 Аватар для Spectral-Owl
608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
18.05.2013, 12:03
SanchezPluz, на устройство я так понимаю необходимо только отправить комманду, а вот когда комманда будет отправляться только от данной программы зависит. не ок конечно, но что есть.

Prostorum, а как цвет определяться будет уже разобрался? а то на те библиотеки что у тебя в проекте нормально смотреть довольно тяжело, ни одной сводки. в самом коде ещё хоть какие-то комментарии есть, и то радует.
В общем кодом по таким библиотекам помочь не смогу, т.к. не уверен в том что правильно могу понять то, что делают методы исключительно по их названию, по этому только общее направление работы:

1. создаёшь класс-действие:
1.1. поле-цвет, которое вызывет действие (возможно ещё плюс к этому минимальное количество пикселей этого цвета)
1.2. само действие (или правильнее будет сказать команда, отосланная роботу)
1.3. приоритет действия (только если нужно соблюдать какую-то очерёдность, допустим если увидит и синий и красный, то сначала помотать головой, потом уже руками)

2. Добавляешь поле-список действий (наверное в MainForm, раз уж у тебя практически всё там)

3. Добавляешь возможность создания экземпляра действия, используя дополнительные контролы MainForm, или создаёшь отдельную форму для этого, не суть. Важно чтоб при создании действия оно заносилось в поле-список.

4. При обновлении картинки с камеры начинаешь анализировать:
4.1. Берёшь действие из списка с максимальным приоритетом
4.2. Проверяешь цвет
4.3. [отсылаешь комманду, указанную в действии]
4.4. повторяешь пункты для 4.1-4.3 для действия со следующим приоритетом

таким образом одна картинка может вызвать практически все подряд действия, а пока робот будет их выполнять программа проанализирует следующую картинку (которая вряд-ли будет отличаться сильно) и отошлёт ещё n комманд, так чтоб робот не перегрелся необходимо или не выполнять пункт 4.4. если выполнен 4.3. (чтоб робот зациклился на одном действии), либо вообще не анализировать список действий, пока картинка значительно не поменяется. в общем это по ситуации.
1
0 / 0 / 0
Регистрация: 19.04.2013
Сообщений: 6
18.05.2013, 12:27  [ТС]
Spectral-Owl, спасибо большое, буду придерживаться данному алгоритму.
Если ты видел, то в проекте у меня уже стоит обычное распознавание цвета, задаешь его по оттенкам RGB и он его ищет по изображению с камеры и выделяет. Мне помогали с распознаванием цвета, поэтому именно как определить цвет, и что надо прописать код, чтобы производился подсчет пикселей одного какого-то цвета, чтобы после его определения я дописал команду, я не могу пока додумать.
В любом случае спасибо, буду пробовать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.05.2013, 12:27
Помогаю со студенческими работами здесь

Выполнение команды после завершения процесса (программы)
Необходимо наладить резервное копирование базы данных после завершения приложения, но что то не работает... CHCP 1251 START...

Выполнение команды после завершения предыдущей с привязкой к файлу
Вопрос может показаться не по теме, но немного терпения. Имеется команда декомпилирования файла.chm из контекстного меню: ...

Выполнение определённой команды после обнаружения заданного процесса
Здравствуйте, какая команда позволит выполнить следующие условия на Win7: 1. ожидание появления в запущенных процессах, процесса java.exe...

Выполнение следующей команды только после завершения предыдущей
Здравствуйте. При выполнении команд "start winrar", "copy", "del" в bat файле происходит следующее: Архив создаётся 5 секунд и за это...

Как продолжить выполнение макроса после завершения команды в командной строке Autocad
Дело в том что макрос вбивает команду извлечения данных в командную строку а потом работает с извлеченными данными. Но по факту получается...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru