Member 14043595 Ответов: 1

Где я могу научиться программировать конкретную программу


У меня нет опыта программирования, в прошлом я интересовался Си, а также сделал калькулятор с использованием Паскаля, если я правильно помню, но это было много лет назад, и я больше ничего не помню.

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

Я понятия не имею, на какие учебные ресурсы мне следует обратить внимание, чтобы научиться кодировать эту конкретную вещь как можно быстрее, а также не знаю, на каком языке лучше всего это кодировать.

Если бы кто-нибудь мог указать мне правильное направление, это было бы очень полезно.

Спасибо!

Что я уже пробовал:

Я попытался исследовать свой вопрос, но не нашел ничего полезного :(

Eric Lynch

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

Тем не менее, я рекомендую начать с основ. Выберите стек...C#/.Net, Java или что-то еще?

Лично мне нравится WinForm C#. Переход к "Привет, мир!"...поиск it...it это мем для каждой технологии.

Затем переходите к базовой обработке изображений. Что такое пиксель? Как она представлена в сложном образе? Как сжать/де-сжать сложный формат изображения, например JPG/PNG?

Затем, если вы все еще в игре, подумайте о распознавании изображений. Видел ли я эту картину раньше? Это (возможно) самая большая проблема в нашей жизни. industry...so-не ждите, что это будет легко :)

Короче говоря, я призываю вас ответить и продолжить свой первоначальный вопрос...с постепенным прогрессом...возможно, с немного большим смирением :). Это трудный вопрос и стоит любых усилий.

Если это не ваша цель...и я искренне надеюсь, что ошибаюсь...есть много людей, которые уже боролись с этим же вопросом и нашли (очень) ограниченное решение. Проверьте / купите одну из этих попыток (Google-ваш друг).

В любом случае, желаю удачи. Вы выбрали очень сложную цель для начала. Придерживайтесь этой проблемы, и вы можете стать инженером мирового класса. Снова...желаю удачи!

Я лично надеюсь, что вы игнорируете скептиков. Если это так, пожалуйста, поймите, что вы выбрали потрясающую профессию (IMO). Существует бесчисленное множество талантливых людей. Надеюсь, вы присоединитесь к их рядам. По моему опыту, это примерно 50% таланта и 50% усилий.

Member 14043595

Спасибо Вам за ответ!

Именно этого я и ожидал :) У меня есть еще один вопрос, в другом комментарии говорится, что мне нужно изучить машинное обучение, чтобы создать то, что я хотел бы. Существует программа под названием Auto Mouse Click by MurGee, которая имеет функцию обнаружения изменений экрана. Вы выбираете область на экране, вы выбираете % изменений, на которые будет действовать программа, и вы просто запускаете ее, когда она обнаруживает изменение (в пикселях, я полагаю).

Это в значительной степени то, что я хотел бы сделать, связано ли это с машинным обучением? Мой вопрос не имеет лучшей формулировки и может показаться более сложным, чем это действительно необходимо. Вместо того чтобы говорить, что я хотел бы, чтобы он обнаружил конкретное изображение, я хотел бы, чтобы он обнаружил изменение, например, из окна 100x100 пикселей, которое изменяется только между двумя цветами. Или что-то, что подсчитывает количество цветных пикселей x в регионе, и если 50% пикселей в регионе изменяются, то тогда программа предпринимает другие действия.

Это все еще машинное обучение? Разве это больше похоже на выполнимую задачу?

Начиная с этого поста, я уже потратил несколько часов на изучение основ python, поскольку он имеет мнение о том, что он дружелюбен к новичкам.

Eric Lynch

Зависит от точных требований, но похоже, что вам может сойти с рук простое пиксельное сравнение. После захвата экрана это будет в основном сравнение и накопление внутри пары вложенных циклов, с внешним циклом по строке и внутренним циклом по столбцу. Он сравнительно ресурсоемкий...не уверен, что вы получите необходимую производительность для чего-то близкого к реальному времени.

Member 14043595

Еще раз спасибо!

1 Ответов

Рейтинг:
2

Afzaal Ahmad Zeeshan

Тебе нужно учиться машинное обучение Но, подождите, это же ... рекурсивный подход Вам нужно узнать, какие проблемы решаются с помощью машинного обучения, и почему только машинное обучение может решить эти проблемы!

Чтобы программировать алгоритмы машинного обучения, вам нужно изучить или, по крайней мере, иметь хороший практический опыт работы хотя бы с одним языком программирования (хотя я рекомендую любые 3, в 3 разных парадигмах — объектно-ориентированное, функциональное программирование и скриптовое или динамическое типизированноеКак только вы наберетесь достаточного опыта в этих языках, только тогда вы сможете написать программу для машинного обучения—ваша задача дать возможность программе рассказать, что находится на экране, а затем выполнить определенное действие требует большего, чем простое if...else.

Глядя на вашу позицию, я бы рекомендовал посетить один из платных сайтов онлайн-курсов, таких как Pluralsight, вы даже можете присоединиться к обучению, предоставляемому другими авторами и издателями, такими как Packt. Изучите Программирование досконально, прежде чем писать эти программы. Это требует гораздо больше усилий, чем обычный Привет мир может научить.

Здесь я прикрепил для вас несколько обычных ссылок, пожалуйста, пройдите по ним и начните сами:

Объектно-ориентированное программирование - Википедия[^]
Начало Работы - Руководство По C# | Microsoft Docs[^]
Добро пожаловать в Python.org[^]
Ускоренный Курс Машинного Обучения  |  Разработчики Google[^]