Mathematica'yı tanımıyorum. . . çok kötü. Ama çoğunlukla yukarıdaki cevabı seviyorum.
Yine de cevabı çözmek için sadece çizgilere güvenen büyük bir kusur var (kişisel olarak bir manuel ayarlamayla ilgili bir sorunum yok ). Zaman zaman gömlek desenini kırdıklarını gösteren bir örnek ( burada Brett Champion tarafından listelenmiştir ) sunulmaktadır. Böylece daha karmaşık bir model haline gelir.
Uzaysal ilişkilerle birlikte şekil kimliği ve renk yaklaşımını denerdim. Yüz tanımaya çok benzer şekilde, birbirlerinden belirli oranlarda geometrik desenler arayabilirsiniz. Uyarı, genellikle bu şekillerin bir veya daha fazlasının tıkalı olmasıdır.
Görüntü üzerinde beyaz bir denge elde edin ve görüntüden kırmızı bir denge çekin. Waldo'nun her zaman aynı değer / renk tonu olduğuna inanıyorum, ancak görüntü bir taramadan veya kötü bir kopyadan olabilir. O zaman daima Waldo'nun gerçekte olduğu bir dizi renge bakın: kırmızı, beyaz, koyu kahverengi, mavi, şeftali, {ayakkabı rengi}.
Bir gömlek deseni ve ayrıca Waldo'yu tanımlayan pantolon, gözlük, saç, yüz, ayakkabı ve şapka var. Ayrıca, görüntüdeki diğer insanlara göre Waldo sıska tarafta.
Yani, bu fotoğraftaki insanların yüksekliğini elde etmek için rastgele insanlar bulun. Görüntüdeki rastgele noktalarda bir grup şeyin ortalama yüksekliğini ölçün (basit bir anahat oldukça az sayıda bireysel insan üretecektir). Her şey birbirinden standart bir sapma içinde değilse, şimdilik göz ardı edilir. Ortalama yüksekliklerin görüntünün yüksekliği ile karşılaştırın. Oran çok büyükse (örneğin, 1: 2, 1: 4 veya benzer şekilde yakınsa), tekrar deneyin. Bazı standart sapmaların dışındaki herhangi bir ortalama hariç, numunelerin birbirine oldukça yakın olduğundan emin olmak için 10 (?) Kez çalıştırın. Mathematica'da mümkün mü?
Bu sizin Waldo bedeniniz. Walso sıska, bu yüzden 5: 1 veya 6: 1 (veya her neyse) ht: wd. Ancak bu yeterli değildir. Waldo kısmen gizlenmişse yükseklik değişebilir. Yani, ~ 2: 1 kırmızı-beyaz bir blok arıyorsunuz. Ancak daha fazla gösterge olmalı.
- Waldo'nun gözlükleri var. Kırmızı-beyazın 0,5: 1 üzerinde iki daire arayın.
- Mavi pantolon. Kırmızı-beyazın ucu ile ayaklarına olan mesafe arasındaki herhangi bir mesafede aynı genişlikte herhangi bir miktarda mavi. Gömleğini kısa giydiğine dikkat edin, bu yüzden ayaklar çok yakın değildir.
- Şapka. Kırmızı-beyaz, başının iki katına kadar herhangi bir mesafe. Aşağıdaki koyu saçlara ve muhtemelen gözlüklere sahip olması gerektiğini unutmayın.
- Uzun kollu. kırmızı-beyaz ana kırmızı-beyaz bir açıyla.
- Koyu saç.
- Ayakkabı rengi. Rengi bilmiyorum.
Bunlardan herhangi biri geçerli olabilir. Bunlar aynı zamanda resimdeki benzer insanlara karşı negatif kontrollerdir - örneğin # 2 kırmızı-beyaz önlük (ayakkabılara çok yakın) giyen negatifler, # 5 açık renkli saçları ortadan kaldırır. Ayrıca, şekil bu testlerin her biri için sadece bir göstergedir. . . belirtilen mesafe içinde tek başına renk iyi sonuçlar verebilir.
Bu işlem yapılacak alanları daraltacaktır.
Bu sonuçların saklanması , içinde Waldo olması gereken bir dizi alan üretecektir . Diğer tüm alanları hariç tutun (örneğin, her alan için ortalama kişi boyutunun iki katı büyüklükte bir daire seçin) ve ardından @Heike'nin kırmızı hariç tümünü kaldırarak ortaya koyduğu işlemi çalıştırın.
Bunu nasıl kodlayacağınız hakkında bir fikriniz var mı?
Düzenle:
Bunu nasıl kodlayacağınız üzerine düşünceler. . . Waldo kırmızı hariç tüm alanları hariç tutun, kırmızı alanları iskeletleyin ve tek bir noktaya indirin. Waldo saç kahverengi, Waldo pantolon mavi, Waldo ayakkabı rengi için de aynısını yapın. Waldo ten rengi için dışlayın, ardından anahattı bulun.
Ardından, kırmızı olmayanları hariç tutun, tüm kırmızı alanları genişletin (çok fazla), sonra iskeletleyin ve budama yapın. Bu bölüm olası Waldo merkez noktalarının bir listesini verecektir. Bu, diğer tüm Waldo renk bölümlerini karşılaştırmak için işaretleyici olacaktır.
Buradan, iskeletlenmiş kırmızı alanları (dilate olanları değil) kullanarak, her alandaki çizgileri sayın. Doğru sayı varsa (dört, değil mi?), Bu kesinlikle olası bir alandır. Değilse, sanırım sadece hariç tut (Waldo merkezi olarak ... hala onun şapkası olabilir).
Ardından, yukarıda bir yüz şekli, yukarıda bir saç noktası, pantolonun altında, ayakkabıların altında vb.
Henüz kod yok - hala dokümanları okuyor.