има ли някаква допълнителна информация, която знаете за изображенията, която може да се използва за помощ?
Например изображенията започват бели, след това стават черни и след това остават черни? или всеки пиксел може да е бял или черен и фактът, че някой е бял или черен, не ви говори нищо за другите?
Ако всеки пиксел може да бъде бял или черен, независимо от другите пиксели, тогава не виждам как можете да направите много по-добре от това да проверявате всеки пиксел в цикъл, докато не намерите първия, който не е бял...
Ако знаете, че ако петият пиксел отляво е бял, тогава 0-4 определено също са бели, тогава може да сте в състояние да проверите по-малко пиксели вместо това, като използвате някакъв вид модифицирано двоично търсене (тъй като можете да пропуснете проверката 0-4 в този случай и просто маркирайте 5, след това 10 и ако 5 е бяло и 10 е черно, знаете, че точката е някъде между 5-10, така че можете да разделите разликата и да проверите 7 и т.н. и т.н., докато намерите точката, в която те се променят.)
Мисля, че тук може да се стигне до компромис между скорост и точност. Най-точният начин е да разрежете всяка колона и ред, като започнете от краищата, като проверите всеки пиксел. След като намерите удар в колона, вие сте намерили ръба от едната страна. Това може да се направи паралелно, тъй като всяка проверка е независима. може да успеете да ускорите това, като, както казахте, проверявате само всеки n-ти пиксел, но е вероятно това да се изрязва от време на време, особено с толкова голям набор от данни. това може или не може да бъде приемливо. може да успеете да подобрите това, като проверите около областта, в която намерите съвпадение, за да проверите дали съвпадението е точно. Така че, ако проверите всеки 3-ти пиксел и намерите попадение в пиксел 15, проверете 14, за да видите дали е попадение (и 13, ако 14 е). като използвате това, може да успеете да се измъкнете с по-малко проверки.
person
Sam Holder
schedule
26.03.2012
imagemagick
от SSD или RAM устройство? - person halfer   schedule 26.03.2012;)
- person halfer   schedule 26.03.2012