|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Mike Roschin 2:5030/243 22 Apr 2002 04:53:08 To : Igor S. Mikhailov Subject : распознавание лазерного прицела -------------------------------------------------------------------------------- Если яркость пятна ощутимо превышает яркость бликов и одиночных ярких точек, оказавшихся вне пределов пятна, то можно попробовать так: Hа основе исходного массива A[0..x,0..y] построить два вектора, B[0..x] и C[0..y]. Bi = 1, если сумма значений строки A[i,0..y] превышает некое пороговое значение (чтобы урезать слабые блики и размытость контура) и соотвественно = 0 в противном случае. Пороговое подобрать эмпирически. Для Cj - аналогично, по сумме столбца A[0..x,j] То бишь получится две "проекции" твоего пятна на ось X и ось Y. Два отрезка. Определить начало и конец каждого отрезка труда не составит - пробежаться от начала вектора до первого ненулевого значения - вот начало отрезка. То же от конца вектора - вот конец отрезка. Стало быть известны и середины обоих отрезков - B[k] и C[l]. А геометрической серединой пятна будет приблизительно A[k,l]. С учетом крошечного размера исходного массива - 50х150 - работать будет очень быстро. Have a fine CARRIER :) ! /White Thesis --- FMailX32 1.60 * Origin: Слоны по деревьям не лазают! //Terminus-2 (2:5030/243) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3247cd40dc53.html, оценка из 5, голосов 10
|