Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2013, 09:19   #1
ivt22
Пользователь
 
Регистрация: 23.07.2013
Сообщений: 81
По умолчанию Вытащить текст из изображения .TIFF.

Подскажите плз. Не знаю в какой теме писать, напишу здесь.
Есть программа Microsoft Document Imaging ей нужно отправлять изображение .TIFF она его распознает и сохраняет в этом же файле. Как из этого файла допустим средствами Delphi вытянуть текст? Вот что нарыл:

Цитата:
Файлы в формате Tagged Image File Format (TIFF)

TIFF — широко распространенный формат различных графических приложений, включая те, которые используются в сканерах и факсах.TIFF-формат применяется в Microsoft Office Document Imaging , здесь широко используются возможности данного формата включать текст, распознанный программой оптического распознавания текста. При сканировании новых документов они сохраняются в TIFF-формате (с расширением .tif), и любой текст, для которого применялось распознавание текста, сохраняется в TIFF-файле вместе с изображением.

Можно открывать и редактировать TIFF-файлы, созданные в MIcrosoft Office Document Imaging, во многих других графических приложениях. При этом, однако, утрачивается весь содержавшийся в файле текст, для которого применялась программа распознавания текста. Необходимо снова выполнить распознавание текста, если требуется получить доступ к тесту в TIFF-файле с применением Microsoft Office Document Imaging.

Технические детали
В Microsoft Office Document Imaging создаются файлы в следующих форматах:
Монохромный. Один бит на пиксель, сжатие G4
Оттенки серого. 8 бит на пиксель, сжатие JPEG
Цвет. 24 бита RGB, сжатие JPEG
Microsoft Office Document Imaging поддерживает:
Все типы сжатия, перечисленные в списке стандартов спецификации TIFF 6.0.
Различные типы сжатия для каждой страницы многостраничного документа.
Изображения в формате TIFF с 1-разрядной, 4-разрядной, 8-разрядной или 24-разрядной палитрой (в цветах палитры или не входящих в палитру).
Цветовые форматы RGB и CMYK.
Мозаичные изображения.
Microsoft Office Document Imaging не поддерживает:
Цветовой формат YCbCr, за исключением изображений в формате JPEG.
Цветовой формат CIE Lab.
Изображения более чем с пятью компонентами на точку или с размерами компонента более 32 разрядов.
Изображения в формате Planar.
ivt22 вне форума Ответить с цитированием
Старый 10.10.2013, 10:24   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

дублировать-то зачем?
этой темы мало http://programmersforum.ru/showthrea...74#post1284074 ?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 10.10.2013, 11:14   #3
ivt22
Пользователь
 
Регистрация: 23.07.2013
Сообщений: 81
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
дублировать-то зачем?
этой темы мало http://programmersforum.ru/showthrea...74#post1284074 ?
не я не дублирую, я нашёл куда сохраняется текст, в TIFF файл он сохраняется, а как его оттуда вытащить не знаю
ivt22 вне форума Ответить с цитированием
Старый 10.10.2013, 16:33   #4
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Вы дублируете.

Цитата:
в TIFF файл он сохраняется, а как его оттуда вытащить не знаю
если он туда сохраняется, почему его размер не меняется?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 11.10.2013, 08:08   #5
ivt22
Пользователь
 
Регистрация: 23.07.2013
Сообщений: 81
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
Вы дублируете.

если он туда сохраняется, почему его размер не меняется?
Я задал вопрос на форуме Microsoft, больше я ничего узнать не могу.. Вот что мне ответили я же выше цитату привел.

Цитата:
При сканировании новых документов они сохраняются в TIFF-формате (с расширением .tif), и любой текст, для которого применялось распознавание текста, сохраняется в TIFF-файле вместе с изображением.
ivt22 вне форума Ответить с цитированием
Старый 11.10.2013, 11:21   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
любой текст, для которого применялось распознавание текста, сохраняется в TIFF-файле вместе с изображением.
Что за ерунда? С чего это он там будет сохраняться? Это же не PDF.
Кстати зачем использовать Microsoft Document Imaging? Есть зе распознавалки получше.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.10.2013, 11:23   #7
ivt22
Пользователь
 
Регистрация: 23.07.2013
Сообщений: 81
По умолчанию

вот кое-что нашёл на этом форуме. Только это все в VBA я вообще с ним не знаком, хотелось бы что-то подобное на делфи научиться делать

Цитата:
Столкнулся с проблемой. Есть ПО которое генерирует кучу графических файлов в формате .tif содержащих латиницу и цифры.
Как правило в файле одна строка, полученная с автоматического сканера - (артикул товара).
Требуется загрузить данные в таблицу Excel 2003.
Пробовал Finereader - получается но хочется полной автоматизации процесса. Возможно ли это ?
Цитата:
Да. Вполне возможно. Начиная с 2003 офиса появилось такое средство как MODI (Microsoft Office Document Imaging).
http://msdn.microsoft.com/en-us/libr...ice.11%29.aspx
Вот пример использования:
Код:
Цитата:
Public Sub Test_MODI_OCR_Text_From_TIF()
Dim oMODI As Object
Set oMODI = CreateObject("MODI.Document")
With oMODI
.Create (ThisWorkbook.Path & "\test.tif")
.OCR (9) 'Английский язык
MsgBox .Images.Item(0).Layout.Text
.Close
End With
Set oMODI = Nothing
End Sub
ivt22 вне форума Ответить с цитированием
Старый 11.10.2013, 11:43   #8
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

для этого есть OLEVariant
Код:
var
  modi: olevariant;
 fname: TFileName;

fname:=.....;
modi:=CreateOLEObject('MODI.Document'); // получить доступ к MODI
// и далее по идее "пишем" функции MODI
modi.Create(fname); 
modi.OCR(9); // сдается мне что это не хранение а распознавание налету.
showmessage(modi.images.item(0).layout.text);
modi.close;
modi:=nil; // MODI нам  более не нужен
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 11.10.2013, 13:11   #9
ivt22
Пользователь
 
Регистрация: 23.07.2013
Сообщений: 81
По умолчанию

спасибо большое, мне кажется мы уже близко, но только выскакивает окошко Класс не зарегистрирован(
ivt22 вне форума Ответить с цитированием
Старый 11.10.2013, 13:19   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

MODI инсталлировать нужно
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вытащить текст из тегов lezgin Общие вопросы Delphi 15 20.01.2013 14:02
вытащить текст с веб страницы patch JavaScript, Ajax 4 01.10.2012 12:19
Как вытащить текст из диаграммы? kta87 Microsoft Office Excel 5 28.08.2012 21:44
вытащить текст из ячейки Tirendus Microsoft Office Excel 18 29.01.2012 19:51
вытащить текст internet explorer_server nbutikov Win Api 5 25.02.2010 21:42