Обнаружение и измерение органических форм (PHP, JS ... или другие) - PullRequest
0 голосов
/ 03 февраля 2011

Картинка:

http://img511.imageshack.us/i/measuring1and2space.gif/

У нас есть изображение .gif. Мы хотим измерить размер 3 черного острова (2) по отношению к большому белому «океану» (1). (3) является фоном - мы должны рассматривать его как границу для (1), но мы не хотим его измерять. (0) является выбранной основной областью (в данном случае (1)), которая должна использоваться в качестве контрольной области для измерения. Таким образом, в этом случае (0) находится в (1), что само по себе, следовательно, 100% (ссылка). Таким образом, три острова составляют примерно XX% от размера (0). Если (0) находится в (2), то (1) составляет Хххх% острова.

Хорошо ... допустим:

1) Пользователь принимает (0) в (1). Давайте представим, что он использует JS, и перетаскиваем красную точку в белую область. Красная точка определяет цвет области под ней.

2) Теперь системе необходимо определить всю белую область, установить ее как (0) и присвоить ей 100%. Система должна различать (2) и (3). Следовательно, можно измерить соотношение между размерами (2) и (1).


Я не могу представить, как такой алгоритм возможен в PHP. Это было бы здорово, но я думаю, что ... если возможно ... что-то вроде OpenCV - лучшее решение. К сожалению, у меня нет опыта с этим. Я пытался закодировать некоторое резюме в PHP, и это было бы выполнимо, если бы были геометрические фигуры, но это органично.

Не могли бы вы дать мне какое-то направление. Я не знаю куда идти. (

Спасибо заранее. :)

1 Ответ

0 голосов
/ 03 февраля 2011

Вы можете использовать http://www.php.net/manual/en/book.image.php для загрузки изображения и получения цвета в один пиксель.

  • считать все черные пиксели
  • считать все черные пиксели из области 3

теперь вы можете рассчитать регион 2, а также регион 1

Для подсчета всех черных пикселей в области 3 достаточно пройти каждую строку. если все черное, считай все. если нет, считайте слева и справа все черные пиксели.

...