Обнаружение монет (и подходящих эллипсов) на image

В настоящее время я работаю над проектом, в котором я пытаюсь обнаружить несколько монет, лежащих на плоской поверхности (например, на столе). Монеты не перекрываются и не закрываются другими предметами. Но могут быть видны и другие объекты, и условия освещения могут быть не идеальными ... В принципе, представьте, что вы снимаете свой стол, на котором есть несколько монет.

Таким образом, каждая точка должна быть видна как эллипс. Поскольку я не знаю положения камеры, форма эллипсов может варьироваться от круга (вид сверху) до плоских эллипсов в зависимости от угла, под которым снимаются монеты.

Моя проблема в том, что я не уверен, как извлечь монеты и, наконец, установить на них эллипсы (которые я ищу для дальнейших вычислений).

А пока Я только что сделал первую попытку, установив пороговое значение в OpenCV, используя findContours (), чтобы получить контурные линии и подогнать эллипс. К сожалению, контурные линии редко придают мне форму монет (отражения, плохое освещение и т. Д.), И этот способ также не является предпочтительным, поскольку я не хочу, чтобы пользователь устанавливал какой-либо порог.

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

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

Есть ли быстрый способ извлечь три монеты из изображения? Расчеты должны производиться в реальном времени на мобильных устройствах, и метод не должен быть слишком чувствительным к разному или изменяющемуся освещению или цвету фона.

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

44
задан paul-shuvo 13 May 2019 в 20:06
поделиться