Dear Merlijn,

Kindly reply to my previous mail.

Thanks and Regards,
Subramanyam

On Saturday, April 17, 2021 at 11:32:31 PM UTC+5:30 Sharp Subbu wrote:

> Dear Merlijn,
>
> Thank you for your efforts in providing the files "Samle-out.pdf" and 
> "Samle-out.pdf2".
> I have checked these files. The file Samle-out2.pdf highly compressed with 
> good quality.
> Kindly share the soiurce code or the tools that you have used to generate 
> the file "Samle-out2.pdf".
> Kindly let us know that whether i can use your source code or tools on 
> Windows 10 PC.
>
> Thanks and Regards,
> Subramanyam
> On Wednesday, April 14, 2021 at 10:21:14 PM UTC+5:30 Merlijn Wajer wrote:
>
>> Hi,
>>
>> On 14/04/2021 15:26, Sharp Subbu wrote:
>> > Dear Merlijn,
>> > 
>> > Thank you very much for your reply. 
>> > We are doing feasibility study on using Tesseract OCR featurs in our 
>> > project on Windows 10 English 32/64-bit OS.
>> > As part of this study, i am trying to find that is it possible to 
>> compress 
>> > / reduce the size of the pdf file created by Tesseract OCR 
>> (CommandLine: > 
>> > Tesseract input.tif outputFile pdf).
>> > To find answer for this question, I have checked tesseract forums, and 
>> > Tesseract APIs. I did not find any related information. Hence, I have 
>> > posted the same question in Tesseract Google forums.
>> > Regarding this, i received nice reply from you. Thank you very much for 
>> > that.
>> > Firstly, clarify that is Tesseract OCR API supports reducing / 
>> compressing 
>> > the OCRed pdf file. Is this support present or not in Tesseract OCR 
>> sourc 
>> > code.
>> > 
>> > Kindly fin dthe attached sample pdf file "Sample.pdf" for your 
>> reference. 
>> > Kindly compress it and send the compressed pdf file.
>>
>> Please see attached 'sample-out.pdf' (compression ratio ~3.5), and
>> 'sample-out2.pdf' (compression ratio ~7.5).
>>
>> I also generated one other PDF which illustrates how the compression
>> works, rather than being actually compressed, but that file is not
>> attached due to file size reasons (~460KB). You can that file (plus the
>> other two files) here: https://archive.org/~merlijn/tmp/mrc-pdf/
>>
>> Please see the commands I used:
>>
>> 1. Extract image from PDF (not necessary if you start with an image,
>> even better to start with the image and not have Tesseract generate the 
>> PDF)
>>
>> > $ pdfimages -all /tmp/Sample.pdf /tmp/sample
>>
>> 2. OCR:
>>
>> > $ tesseract /tmp/sample-000.jpg - hocr > /tmp/sample-000.hocr.html
>>
>> 3. Create PDF (dpi taken from JPEG image):
>>
>> > $ PATH=$PATH:/home/merlijn/archive/pdf/bin recode_pdf --from-imagestack 
>> /tmp/sample-000.jpg --hocr-file /tmp/sample-000.hocr.html -o 
>> /tmp/sample-out.pdf -m 2 -v --dpi 200
>> > [...]
>> > Processed 1 pages at 1.80 seconds/page
>> > Compression ratio: 3.677732
>>
>> 4. Create more compressed PDF (ditto for dpi):
>>
>> > $ PATH=$PATH:/home/merlijn/archive/pdf/bin recode_pdf --from-imagestack 
>> /tmp/sample-000.jpg --hocr-file /tmp/sample-000.hocr.html -o 
>> /tmp/sample-out2.pdf -m 2 --dpi 200 --bg-downsample 3 -v
>> > [...]
>> > Processed 1 pages at 1.59 seconds/page
>> > Compression ratio: 7.581879
>>
>> Size comparison:
>>
>> > $ ls -lsh /tmp/sample-out*.pdf /tmp/Sample.pdf
>> > 40K -rw-r--r-- 1 merlijn merlijn 38K Apr 14 18:08 /tmp/sample-out2.pdf
>> > 80K -rw-r--r-- 1 merlijn merlijn 79K Apr 14 18:11 /tmp/sample-out.pdf
>> > 296K -rw-r--r-- 1 merlijn merlijn 293K Apr 14 17:56 /tmp/Sample.pdf
>>
>> Note that:
>>
>> 1. Compression is not lossless, but text should nevertheless be quite 
>> sharp.
>> 2. I run Tesseract on the image in the PDF, so for your purposes you
>> might want to instead generate hOCR from the image and let 'recode_pdf'
>> make the PDF for you (it's pretty much the same code that Tesseract uses).
>> 3. The mask in the PDF is encoded with 'ccitt' and not 'jbig2', which
>> would give you slightly better compression still. (This is a bug in
>> mupdf which will be fixed in the next mupdf release, I have a patched
>> version somewhere, but not at hand)
>> 4. I have only tested this on Linux.
>> 5. The above run uses Kakadu for JPEG2000 compression, but you could
>> also use Grok [0] or OpenJPEG [1] (OpenJPEG already works as per my
>> previous email).
>>
>> Finally, for some reason it looks like the PDFs created with the recode
>> tool actually look better than the sample you sent me -- I think that is
>> because yours suffers from JPEG artifacts which gets mostly cancelled
>> out by the mask technique that MRC employs.
>>
>> If this looks like something you might want to use, we could talk
>> off-list about how to make it works on Windows, to not bother the list
>> with details not relevant to Tesseract.
>>
>> Cheers,
>> Merlijn
>>
>> [0] https://github.com/GrokImageCompression/grok/
>> [1] https://www.openjpeg.org
>>
>> > Thank you very much for your nice help.
>> > Subramanyam
>> > 
>> > 
>> > On Wednesday, April 14, 2021 at 6:27:43 PM UTC+5:30 Merlijn Wajer wrote:
>> > 
>> >> Hi, 
>> >>
>> >> On 14/04/2021 13:52, Sharp Subbu wrote: 
>> >>> Dear friends, 
>> >>>
>> >>> Kindly guide/help us to find solution for the below point: 
>> >>> ============================= 
>> >>> How to reduce the size of a OCRed pdf file using Tesseract OCR APIs. 
>> >>> =============================== 
>> >>
>> >> Not sure exactly what use case you have in mind (OS, etc), but I have 
>> a 
>> >> suggestion, as I dealt with this in the recent past. 
>> >>
>> >> I developed something similar to the foxit/luratech "PDF compression", 
>> >> in Python and it is entirely open source. It uses the Tesseract hOCR 
>> >> result files. The can lead to 3-15x compression ratios (sometimes 
>> more, 
>> >> depending on the image formats that you use). 
>> >>
>> >> It converts images to JPEG2000 for best compression (but slower 
>> loading 
>> >> times) and also attempts to create a "foreground", "background" and 
>> >> "mask" image (Mixed Raster Content [0]), which can significantly 
>> improve 
>> >> compression. It inserts a text layer just like Tesseract does (the 
>> code 
>> >> is a port of Tesseract's C++). 
>> >>
>> >> Here is some info [1], and here is the source code [2]. 
>> >>
>> >> There is a "openjpeg-wip" branch that can use OpenJPEG instead of 
>> Kakadu 
>> >> for image compression. 
>> >>
>> >> Example usage to create a PDF from a set of images: 
>> >>
>> >> recode_pdf --from-imagestack 'images/*.jp2' --hocr-file 
>> >> combined_tesseract_results.html -o out.pdf -v --use-openjpeg -m 2 
>> >>
>> >> There is also the --from-pdf option instead of --from-imagestack, but 
>> >> that has only seen light testing. 
>> >>
>> >> You can combine the hOCR result files using hocr-combine-stream [3] 
>> >>
>> >> If this suits your use case, I'd be happy to help/assist here or off 
>> >> list. There aren't many users of the software yet (the same offer 
>> >> extends for others reading this list). If you have an example PDF that 
>> >> you can send me, I'd be happy to try to send you a compressed PDF 
>> back. 
>> >>
>> >> Cheers, 
>> >> Merlijn 
>> >>
>> >>
>> >> [0] https://en.wikipedia.org/wiki/Mixed_raster_content 
>> >> [1] https://archive.org/~merlijn/projects/archive-pdf-tools/index.html 
>> >> [2] https://git.archive.org/merlijn/archive-pdf-tools 
>> >> [3] 
>> >>
>> >> 
>> https://git.archive.org/merlijn/archive-hocr-tools/-/blob/master/bin/hocr-combine-stream
>>  
>> >>
>> > 
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"tesseract-ocr" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tesseract-ocr+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tesseract-ocr/8ddafbd4-437b-40b2-b98c-c88e63d5575an%40googlegroups.com.

Reply via email to