Я думаю, что вы никогда не получите хороших результатов без реального пользователя, говорящего программе, что делать. Подумайте об этом так: как ваша программа должна решать, когда присутствует более 1 интересного объекта (например, 2 машины)? Что делать, если объект, который вы хотите, на самом деле гора на заднем плане? Что делать, если внутри изображения нет ничего интересного, и, следовательно, нечего выбирать в качестве объекта для обрезки? и т. д. ...
С учетом сказанного, если вы можете сделать предположений вроде: будет присутствовать только 1 объект, то вы можете использовать алгоритмы распознавания изображений .
Теперь, когда я об этом думаю. Недавно я прочитал лекцию об искусственном интеллекте в роботах и в методах исследования роботов. Их исследования касались языкового взаимодействия, эволюции и распознавания языка . Но для того, чтобы сделать это, им также потребовалось несколько простых алгоритмов распознавания изображений для обработки воспринимаемой среды. Одним из приемов, которые они использовали, было создание трехмерного графика изображения, где x и y, где нормальные оси x и y и ось z были яркостью этой конкретной точки, затем они использовали ту же технику для красно-зеленых значений, и сине-желтый. И вот, у них было что-то (относительно) простое, которое они могли бы использовать, чтобы выбрать объекты из воспринимаемой среды.
(Мне очень жаль, но я не могу найти ссылку на хорошие графики, которые у них были, которые показали, как все это работало).
В любом случае, дело в том, что они не были заинтересованы (настолько) в распознавании изображений, поэтому они создали что-то, что работало достаточно хорошо и использовали что-то менее продвинутое и, следовательно, менее трудоемкое, так что создать что-то простое для этой сложной задачи.
Также у любой хорошей программы для редактирования изображений есть какая-то волшебная палочка , которая выберет, с нужным количеством настроек, интересующий вас объект, на который вы указываете, возможно, стоит потратить на это время а также.
Итак, это в основном будет означать, что вы:
- нужно сделать некоторые предположения, иначе он ужасно потерпит неудачу
- , вероятно, лучше всего будет использовать технику искусственного интеллекта и, в частности, распознавание изображений
- может взглянуть на paint.NET и их алгоритм для их magic wand
- попробуйте использовать тот факт, что на хорошей фотографии будет объект интереса где-то посередине изображения
.. но я не говорю, что это решение вашей проблемы, может быть, можно использовать что-то более простое.
О, и я продолжу искать эти ссылки, они содержат действительно ценную информацию по этой теме, но я ничего не могу обещать.