Paletli bir robot oyuncağım var ve bir iPhone ile kontrol ediyorum. Robot, bilinen bir kare boyutuna sahip canlı bir kamera beslemesi çıkarıyor ve bunu UIImage'da görüntülüyorum.
Robota bir lazer pointer ekledim ve robotun eksenine sabitledim. Görüntüdeki lazer pointer noktasını tespit etmeye ve böylece nesnenin yakınlığını hesaplamaya çalışıyorum. Lazer noktası merkezden uzakta ise, robotun duvara yapıştığını ve yedeklenmesi gerektiğini biliyorum.
Ekranda parlak beyaz-kırmızı piksellerden oluşan bir noktayı nasıl tespit edebilirim? Bir çözüm, merkezin belirli bir yarıçapındaki piksellerin rengini örneklemek ve bir damla parlak rengini tespit etmek olacaktır. Herkes bu etkinlik için bir algoritma önerebilir mi?
Başka bir yaklaşım, noktanın son birkaç kare üzerindeki ortalama konumunu takip etmek ve böylece tahmini yarıçapı azaltmak olacaktır. Önceden tanımlanmış bir bölgede nokta yoksa, arama bölgesi genişletilebilir.
Son olarak, robotun etrafındaki halıyı algılamasını öğretmek istiyorum. Halı bir lazer işaretçiyi belirli bir şekilde yansıtır ve robotun etrafında kaç kare benzer özelliklere sahip olduğunu anlamak istiyorum. Lazer işaretçisinin bir ekranın neresinde olduğunu bilirsem, o görüntüden küçük bir dikdörtgeni kırpıp bunları birbiriyle karşılaştırabilirim. Siluetleri eşleşip eşleşmediğini anlamak için birden fazla küçük resmi birbiriyle karşılaştırmanın etkili bir yolu var mı?
Lazerin parlak yüzeylerden yansıdığını fark ettim ve bu yansımanın yönü, kırılma yasalarına uygun olarak, uzayda yüzeyin yönü hakkında bir şeyler söyleyebilir.
Teşekkür ederim!