Hi,

It’s time for a new release. So please welcome Gnome Scan 0.5.2 loosly codenamed « Ça ROCs » due to AbiScan dependency on this release 🙂 . Amongst other changes, here are some highlights :

  • Preview area drawning and selection
  • Action framework in flegita (added [buggy] printing feature)
  • Revamped icon handling. Use “scanner” icon from icon naming spec.
  • Resurrected Gimp plugin.
  • Several API enhancements.
  • Some bugfixes.

I encourage you to test and report as much bug as possible. There is a lot of room for improvement and some area are still untouched (e.g. processing). In the near future, i plan to improve area handling and preview area (resize, move, etc). After that, i should take a stand and design proper processing model and implement it. I need to fix printing, but GtkPrint seems not that suitable if you dissociate dialog and printing. Needs further investigation. I hope to provide 0.5.3 for october.

Download

Please hunt the bug !

Kind regards,
Étienne.

I don’t kill !

September 1, 2007

Hi,

Waiting for a full Gnome blog, i made an endorsment on the subject of Gnome Scan blog. Just to post lyrics of a song from Nerf Herder. This is about Miguel problem with vegetarianism :

« I don’t kill and I don’t murder
And I don’t eat meat
And I don’t eat vegetables, no no no

‘Cause I only eat candy »

You got the answer ! Stop kills the vegetable ! 😀

What next for Gnome Scan ?

August 22, 2007

Hi everybody,

The end of th Google SoC 2007 does not mean the end of development. I wish every GNOME students will continue to contribute and develop. Of course, i will continue Gnome Scan. Here is some stuff for Gnome Scan futur.

  • mid September : 0.5.2 including resurected Gimp plugin, printing and bugfixes.
  • end October : 0.5.3 including processing and improved preview area.
  • Christmas : libgnocr development should begin in order to get advanced OCR API and UI for Gnome. This will allow to update AbiScan plugin.

This is a rought roadmap, but it shows what i have in mind for Gnome Scan and OCR in Gnome.

I also have a bunch of random feature to implement :

  • scan from PDF (using poppler-glib ?)
  • scan to mail
  • capplet (calibration, color correction, etc.)
  • evolution plugin (scan to vCard)
  • gthumb/f-spot plugin (scan to albums)
  • deskew for everyone
  • bindings in python, C++ (for abiscan), vala, C# (for f-spot), …
  • hotplug with HAL (needs huge discussion and work with SANE people).
  • network sharing (again)

Stay tuned 🙂

Étienne.

Hi everybody,

I was away the past week and did not work very much on Gnome Scan. I met with Lionel Dricot and Raphaël Slinkx at Louvain-la-Neuve. Funny 🙂 I’m just back to home and checking out mails, RSS, and such.

Weekly Report

The past two weeks were busy on various improvements in Gnome Scan, particularily printing (using GtkPrint). I added the codebase to handle multiple actions (mail to come soon). That’s not that easy since GtkPrint is not flawless for use in such special case : configure scan and print ; acquire and print. It’s more used for a workflow like configure>scan>configure>print.

Final Report

No doubt this Soc has been ful of new features and improvements for Gnome Scan, however, there is place for lot of development.

The bad

  • I still didn’t reach the 0.6 stage (i.e. all feature from Gnome Scan 0.4.1 reimplemented).
  • No real processing at all (rotation, deskew, gamma, etc.). I would like to use CPU only where hardware fail this is one reason why i didn’t implemented it yet.
  • I need another project (temporarily named libgnocr) in order to provide a modular OCR API and UI (primarily on top of OCRopus). Contribution are welcome.
  • Preview is not stable nor optimized.
  • Page Orientation is not yet handle (Adding button is not enough for adding a feature :/).
  • Memory leaks.
  • Printing suck (yet).
  • Documentation is incomplete (but we have screenshots).
  • I didn’t attend at GUADEC 2007 🙁

The goods

  • Far far far better SANE support.
  • Far far far better scanner handling (no more hardcoded options, etc.).
  • Multi threaded (no news about thread safe, comments welcome)
  • Gegl based for effective huge image handling
  • AbiScan : the power of Gnome Scan and OCRopus in Abiword
  • Flegita Gimp : You can use Gegl in Gimp yet !
  • Preliminary printing support
  • Preview acquisition monitoring
  • Modular preview area
  • Module loading system, allow to install/uninstall backend (e.g. choosing twain/SANE; removing file, etc.)

I’m not satisfied with my amount of work during august. Well, i plan to work fulltime on Gnome Scan next week. Also, is should code a bit this week. 🙂 Gnome Scan is about 12000 lines of code (excluding headers).

The best thing was contact with other people. First with Vincent Untz, my mentor, which was very distant, except when i need him :). Then come all developers from external project like Gegl, OCRopus, AbiWord. The same for -hackers and various GIMPNet chan members. All that people must receive a hertlich thank from me. The same goes to user for their very important feeback (Merci Jean-François Fortin !) also you, dear reader and commenter.

Merci et à bientôt !

Étienne.


E Ultreïa !

Choosing an OCR system

August 10, 2007

Hi everybody,

According to comments on my last post about the state of OCR in Gnome, I fill the need to clarify the situation about supporting or not proprietary software.

Manifest: Gnome Scan is part of Gnome and thus, part of GNU. Yes, Gnome Scan has GNU in its name, and that’s not for fashion. Gnome Scan goal is to provide a libre scan infrastructure for the GNU OS on top of Gnome (rocking) technologies Gtk+, GEGL, etc. Gnome Scan also uses non GNU free software such as SANE for accessing scanners and yet OCRopus for OCR.

Someone would say : « why choosing OCRopus ? OCR-Shop or IRIS Toolkit or rocks ! »

Yet free OCR engine are years behing proprietary software ; right. However, using proprietary solution won’t help them. Paying for a SDK for adding value to proprietary software without even receiving incoming is just crazy ! It’s up to their respective company to provide support for their software. Please don’t complain that i don’t use your proprietary software. I really accept the fact that Gnome OCR must make room for every OCR engine, just because no one is perfect (especially libre ones).

Comment on supporting different OCR engine is rightful. Taking this feedback in account, I plan to build an API for Gnome OCR just like GtkPrint do for printing, and Gnome Scan for scanning; i.e. in a modular fashion. This change from my preliminary plan to provide this library in OCRopus itself. However, i’m pretty sure i will only support OCRopus. Just like SANE in Gnome Scan up to 0.4, Gnome Scan use OCRopus and only OCRopus (i.e. hardcoded) for OCR. Even worst, AbiScan itself uses directly OCRopus. That’s experimental solution, comments are welcome.

Asking for a libre OCR API is very important. That’s one value of Gnome Scan. OCRopus and libre OCR engines needs love. Don’t refuse them what they need 😉

I wish everyone understand my point of view and Gnome Scan goals, without fearing commenting. Feedback makes me happy :).

Regards,
Étienne.

State of OCR in Gnome

August 7, 2007

Hi everybody,

My work on flegita-gimp does not mean i forgot OCR which is, IMHO, the first class feature of scanning. Writing AbiScan clears my vision on how to design Gnome OCR UI. Before writing AbiScan, i was wondering how to integrate OCR in Gnome Scan. I was really worried because Gnome Scan is designed to pass image (as GeglBuffer) to application, not text or HTML or wathever OCR output format. I decided to write AbiScan and use ocropus directly instead of through Gnome Scan.

This lead me to find the way Gnome will receive OCR and OCR UI. AbiScan use ocropus command line tool, the idea is to use a library providing common OCR UI instead. This library should be ship by OCRopus. Why OCRopus and not Gnome Scan ? Because i think this library depends more on OCRopus and not on Gnome Scan. I may provide an OCR sink in Gnome Scan which help pluging Gnome Scan and OCRopus, but that’s not all the UI and OCR interaction part which should heavily rely on OCRopus itself, just like OCRopus command line tool.

Publishing AbiScan seems to have revealed questions from users. At the risk of repeating OCRopus website, let me explain a bit of OCRopus. OCRopus is not an OCR engine. OCRopus is a document analysis and OCR system. Instead of rewriting its own OCR engine, it uses existing one, especially tesseract, but more are to come. The difference between OCRopus and an OCR engine is exactly the same as between HTML and plain/text. HTML contains semantic, formatting and test itself while plain/text contains only … text ! So, if ever you read a comparision between OCRopus and e.g. gocr or ocrad, you can laught at it. Well, in fact, ocrad has a minimal layout analyser for text column, but that’s not as advanced as OCRopus layout analyser.

Regards,
Étienne.

New flegita-gimp for r400

August 7, 2007

Hi everyone,

I rewrote flegita-gimp on top of Gnome Scan 0.5.2. It’s in SVN for the 400th revision ! This was very easy to write this plugin, reusing code from the previous one. Once thing to notice, it’s the first ever use of Gegl inside the Gimp ! Keep in mind that Gegl is designed as the future of Gimp. In the future, Gnome Scan and Gimp should speek natively using GeglBuffer, but for Gimp 2.3, i had to translate GeglBuffer into the GimpPixelRgn.

Using GeglBuffer allow to manipulate unlimited sized image from high res scan (given there is no memleak). I wonder if that make sense to add advanced option such as layer opacity or layer mode. I already add a field entry allowing to name the field. This avoid to rename the field after scan. Feedback welcome.

I provide a screencast video using flegita-gimp 0.5.2 showing the two features provided by the plugin : scan as new image and scan as layer. flegita-gimp should receive improvments like better integration with undo/redo action.

If you want to test it, that’s easy (compared to AbiScan) :

  1. install Babl and Gegl from SVN
  2. install Gimp 2.3 or SVN
  3. install Gnome Scan SVN
  4. launch the Gimp and use /File->Acquisition->Scan or /File->Scan as Layer to trigger the plugin.

This is the second plugin on top of Gnome Scan. I’m quite happy with that. Gnome Scan is really cool to use. It really needs debugging and polishing, but the API actually rules.

Regards.

AbiScan Preview

August 6, 2007

Hi all,

Resulting in about one week of lazy effort, i reach to produce a preliminary version of AbiScan on top of OCRopus. I produced a screencast video of direct OCR import into Abiword Frame. This is very buggy, but very exciting too :).

I must thanks #abiword people, especially Dominic Lachowicz, Marc Mauer, Martin Sevior, jean, sum1 and Hubert Figuière. Thanks goes to OCRopus and Gegl people for their work and advices.

I provide AbiScan patch against abiword-plugins SVN. The plugins does not work if abiword use G_MODULE_BIND_LAZY flags, this is a bug in abiscan, not abiword. I provide a patch against abiword SVN removing g_module_open flags, but it will hopefully never be merged.

If you want to try it, follow the following steps :

  1. Install tesseract-ocr from SVN, with the patch i provide in tesseract BTS ;
  2. Install ocropus ;
  3. Install Gegl SVN ;
  4. Install Gnome Scan SVN ;
  5. Install abiword SVN with g-module-open-flags.diff patch ;
  6. Install abiword-plugins SVN with abiscan.diff patch ;
  7. Launch Abiword
  8. Launch Insert > Import from scanner and follow the steps.

Warning : that’s really buggy.

  • Gnome Scan does not handle device list very well if you launch several times the dialog.
  • OCRopus does not provide any API, so the plugin use system() and isn’t able to monitor progress. OCRopus might take very long time.
  • Sometimes, it eats tons of memory.
  • Currently, it lose formating, that’s due to a HTML import pasteFromBuffer() bug. I had to make a choice between paste into existing document losing formating, or open directly tmp OCRopus HTML directly.

Bug reports are very welcome, please file bugs to gnome-scan product in Gnome bugzilla, for the abiscan component. Note that OCRopus prefer 150dpi images.

Anyway, that’s a rought draft with the key feature provided by Gnome Scan and OCRopus : tight integration into application and advanced OCR.


becomes

Regards,
Étienne


E Ultreïa !

Back from scouting

July 30, 2007

Hi all Gnome lovers,

I’m back from 17 days of scouting in nature. This was great. I published some photos of the camp at Faye in Nièvre. I came back last friday and was exhausted.

I didn’t resumed yet Gnome Scan development. I’ll take the time to think the future of Gnome Scan, espcially OCR. Sadely, there were not that much work on OCRopus during the past 3 weeks. I wonder how to pass data to the application. OCRopus output is in HTML with OCR tags. That’s useful but not very clean. I wonder how to integrate that in AbiWord.

So, my plan for the end of the summer is to implement OCR, rotation, Gimp and Abiword plugin.

Hi,

Monday, i will take off for more than two weeks. I will serve about 41 boys for scouting from 10th to 27th. The last few weeks has seen terribily slow progress for Gnome Scan. Even if the TODO list is far from empty, i didn’t have the motivation to get things done. This results on about 3 month of hard working on Gnome Scan. It’s time to get a pause. Scouting is perfect for that. Playing with boys in the nature will make me forget gnome-scan for some times !

During those weeks of fun, i wish that gnome-scan related project such as OCRopus and tesseract or even Gegl will get some improvements. I wish to get back my motivation in late July. August will be a rush for gnome-scan, just for the final evaluation and 0.5.2 release. 0.6 will land for Christmas, just like 0.4. That may be enough to get it included in Gnome 2.22 !?

While Gnome Scan 0.4 was quite a “proof of concept”, Gnome Scan 0.5 is a solid base for future development. I intend to begin writing tutorial and – why not ? – a lightning talk for GUADEC 2008. 2.24 or even 2.22 may be an important step for scanning in Gnome. I’m really waiting for a desktop with rocking printing, burning and scanning dialogs in a lot of applications.

Anyway, i’ll be off during the following three weeks after 3 months of heavy development. The future is full of promises. I hope to find things changed after the scout camp in order to find back the Gnome Love 🙂

Photo of two friends at Chamechaude in the Alpes moutains in France during winter scout camp.

Étienne.