|
#1
|
|||
|
|||
IMG2TEXT
Нужно определить числа с картинки.
Нашел некий сорсец, но чет я его не понимаю. Код:
function img2text(bitmap:tbitmap; sjatie:boolean;black,white:string):string; var x,y: integer; str: string; b: tbitmap; begin if sjatie=true then begin b:=tbitmap.Create; b.Width:=bitmap.Width; b.Height:=bitmap.Height div 2; b.Canvas.StretchDraw(rect(0,0,bitmap.Width,bitmap.Height div 2),bitmap) end else begin b:=tbitmap.Create; b:=bitmap; end; for y:=0 to b.Height -1 do begin if y>0 then str:=str+#13#10; for x:=0 to b.Width -1 do case b.Canvas.Pixels[x,y] of clwhite: str:=str+white; clblack: str:=str+black; else Exit; end; end; img2text:=str; end; end. пример картинки: 15.bmp Последний раз редактировалось nixon232, 24.12.2015 в 22:24. |
#2
|
||||
|
||||
Это не определение, здесь перевод ч\б пикселей картинки в текст, что потом с такой символьной матрицей делать - загадка
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
Этот пользователь сказал Спасибо Alegun за это полезное сообщение: | ||
nixon232 (25.12.2015)
|
#3
|
|||
|
|||
Цитата:
Вы правы. Вот результат ф-ии: img.bmp Может подскажите, что можно сделать для достижения моей цели. На форме есть текст( числа), которые невидны даже с использованием Windows spy. Как еще можно определить текст? Может как-то сравнивать отдельные числа по маске? но насколько это долго? может есть какие примеры на эту тему? |
#4
|
||||
|
||||
Вот адаптант под ваш рисунок, для других нужно добавить шаблоны цифр
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
Этот пользователь сказал Спасибо Alegun за это полезное сообщение: | ||
nixon232 (25.12.2015)
|
#5
|
|||
|
|||
Цитата:
|
#6
|
||||
|
||||
Как частный случай, возможно и сработает, но если начнут извращаться над капчей, поворачивать цифры, накладывать их друг на друга, менять шрифт и т.п. то работать перестанет.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#7
|
|||
|
|||
Все же вариант с капчей не стабилен. Даже выложенный вариант, как я понял, 30 видит как 1 цифру, но потом дописывает ноль (наверное проблема в семплах). вариант с 0..9 вообще толком не зарабатывал.
Есть еще такой вариант нужных чисел175.bmp при определении класса под мышкой, получаем класс, которых много на форме. Но даже если добраться до нужного, как узнать текст, ведь объекта как бы и нет? |
#8
|
|||
|
|||
Попробую поднять тему. А если известен шрифт, можно как-то получить текст? нечто вроде Textout наоборот?
|
#9
|
||||
|
||||
Цитата:
См. delphi OpenCV (https://github.com/Laex/Delphi-OpenCV) — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#10
|
|||
|
|||
Цитата:
Код:
[Exec Error] The command "brcc32 ..\..\..\resource\facedetectxml\haarcascade.rc -fo.\haarcascade.res" exited with code 9009. |