Daniel Reetz, the founder of the DIY Book Scanner community, has recently started making videos of prototyping and shop tips. If you are tinkering with a book scanner (or any other project) in your home shop, these tips will come in handy. https://www.youtube.com/channel/UCn0gq8 ... g_8K1nfInQ

manual deskew?

Scan Tailor specific announcements, releases, workflows, tips, etc. NO FEATURE REQUESTS IN THIS FORUM, please.
Post Reply
matt

manual deskew?

Post by matt » 29 May 2010, 01:38

Hi,

After compiling the latest version of ScanTailor for OSX (thanks to a timely patch by Tulon, thanks!) I'm now getting a chance to use ST in earnest. Overall it's great, especially the automated page splitting and content selection.

One thing I'm coming across with my current project (an anatomy text with lots of pictures) is that the auto-deskew algorithm seems to be requiring a lot of manual intervention. Basically my images are straight to begin with but (possibly because of the many pictures) ST is "fixing" about 30% of the (400+) pages and introducing 1-5% of skew. Is there any way to lock the deskew to auto-mode or set it manually for more than one page at a time? If not, anyone know where in the code I could attempt to bypass/comment out this module? Also I read something in another topic about a XML file that has some of the image data. Would that be another place I could manually override the auto-computed skew setting?

Thanks!
Matt

Tulon
Posts: 687
Joined: 03 Oct 2009, 06:13
Number of books owned: 0
Location: London, UK
Contact:

Re: manual deskew?

Post by Tulon » 29 May 2010, 03:11

This is one of the features I don't really like, but if I can't make it work automatically most of the time for any given book, I will implement it sooner or later. Still, first I'd like to get some of those pages to try to fine-tune the automated algorithm.

For now, you will have to modify the source code at filters/deskew/Task.cpp, changing this:

Code: Select all

if (skew.confidence() >= skew.GOOD_CONFIDENCE) {
    ui_data.setEffectiveDeskewAngle(-skew.angle());
} else {
    ui_data.setEffectiveDeskewAngle(0);
}
into this:

Code: Select all

//if (skew.confidence() >= skew.GOOD_CONFIDENCE) {
//  ui_data.setEffectiveDeskewAngle(-skew.angle());
//} else {
    ui_data.setEffectiveDeskewAngle(0);
//}
Scan Tailor experimental doesn't output 96 DPI images. It's just what your software shows when DPI information is missing. Usually what you get is input DPI times the resolution enhancement factor.

matt

Re: manual deskew?

Post by matt » 29 May 2010, 04:22

Hey Tulon,

Thanks for the quick reply and expedient workaround. Also, now that I have a foothold into the code I'll be able to answer some of my own questions (and perhaps even track down a bug or two).

Much appreciation for the great work on the project!
Matt

Post Reply