Welcome to DocCreator web page Presentation


DocCreator is an Application to generate synthetic document images

Created by public researchers from the LaBRI and the L3I

LaBRI logo l3I logo

univ Bordeaux logo CNRS logo univ Bordeaux logo univ la rochelle logo

About DocCreator

DocCreator is able to create a large amount of synthetic document images

The way DocCreator works is fully described in [Journal of Imaging2017], [ICPR2012], [ICDAR2013], [HIP2013], [LNCS2014].

DocCreator (desktop and online version) have been developed by J. Albouys- Perrois, M. Bazalgette, P. Beziau, A. Borde, F. Bruneau, J.P. Domenger, J Gouraud, N. Journet, M. Kébé, V.C. Kieu, B. Mansencal, R. Mullot, V. Rabeux, J. Sillini, R. Tlili, Zakia Taoufik, J. Ukundwa, N. Vidal, M. Visani

If you use our work, please cite [Journal of Imaging]

DocCreator is useful for performance evaluations tasks

performance evaluation

Like [BUI2014] and [MEH2014], docCreator is useful to know precisely whether your alogirthm is robust. Whant to know if your algorithm (ocr, line segmentation, wordspotting, binarization, ...) works in all configurations? With DocCreator, you can add various realistic degradations (bleed-through, light defect, paper deformation, ink degradation, ...) on your original image

DocCreator is useful for retrainning tasks

network neurone

Like [Mont2014] and [FIS2013], you can use DocCreator to complete your trainning dataset and finally improve your recognition rate.

List of publications where docCreator or a database created with docCreator were used:

  • Liu, N., Zhang, D., Xu, X., Liu, W., Ke, D., Guo, L., ... \& Chen, L. (2017, November). An Iterative Refinement Framework for Image Document Binarization with Bhattacharyya Similarity Measure. In Document Analysis and Recognition (ICDAR), 2017 14th IAPR International Conference on (Vol. 1, pp. 93-98). IEEE.
  • Roy, P. P., Bhunia, A. K., \& Pal, U. (2017). HMM-based writer identification in music score documents without staff-line removal. Expert Systems with Applications, 89, 222-240.
  • Julca-Aguilar, F. D., \& Hirata, N. S. (2017). Image operator learning coupled with CNN classification and its application to staff line removal. arXiv preprint arXiv:1709.06476.
  • Calvo-Zaragoza, J., Pertusa, A., \& Oncina, J. (2017). Staff-line detection and removal using a convolutional neural network. Machine Vision and Applications, 28(5-6), 665-674.
  • Garg, R., \& Chaudhury, S. (2016, April). Automatic Selection of Parameters for Document Image Enhancement Using Image Quality Assessment. In Document Analysis Systems (DAS), 2016 12th IAPR Workshop on (pp. 422-427). IEEE.
  • Montagner, I. S., Hirata, N. S., Hirata, R., \& Canu, S. (2016, September). NILC: a two level learning algorithm with operator selection. In Image Processing (ICIP), 2016 IEEE International Conference on (pp. 1873-1877). IEEE.
  • Montagner, I. S., Hirata, R., Hirata, N. S., \& Canu, S. (2016, October). Kernel approximations for W-operator learning. In Graphics, Patterns and Images (SIBGRAPI), 2016 29th SIBGRAPI Conference on (pp. 386-393). IEEE.
  • Montagner, I. S., Hirata, N. S., \& Hirata, R. (2016, October). Image operator learning and applications. In Graphics, Patterns and Images Tutorials (SIBGRAPI-T), SIBGRAPI Conference on (pp. 38-50). IEEE.
  • Baro, A., Riba, P., \& Fornés, A. (2016, October). Towards the recognition of compound music notes in handwritten music scores. In Frontiers in Handwriting Recognition (ICFHR), 2016 15th International Conference on (pp. 465-470). IEEE.
  • Pastor-Pellicer, J., Garz, A., Ingold, R., \& Castro-Bleda, M. J. (2015, August). Combining Learned Script Points and Combinatorial Optimization for Text Line Extraction. In Proceedings of the 3rd International Workshop on Historical Document Imaging and Processing (pp. 71-78). ACM.
  • Lagarrigue, M., Rossant, F., Pierrot, A., Gardes, J., Maldivi, C., \& Petit, E. (2014, November). Assessing the quality of digital re-publishing of textual documents through the follow-up of a correction protocol by crowdsourcing. In Computational Intelligence for Multimedia Understanding (IWCIM), 2014 International Workshop on (pp. 1-5). IEEE.
  • Rabaev, I., Dinstein, I., El-Sana, J., \& Kedem, K. (2014, October). Segmentation-free keyword retrieval in historical document images. In International Conference Image Analysis and Recognition (pp. 369-378). Springer, Cham.
  • dos Santos Montagner, I., Hirata, R., \& Hirata, N. S. (2014, August). A machine learning based method for staff removal. In Pattern Recognition (ICPR), 2014 22nd International Conference on (pp. 3162-3167). IEEE.
  • Montagner, I. S., Hirata, R., \& Hirata, N. S. (2014, October). Learning to remove staff lines from music score images. In Image Processing (ICIP), 2014 IEEE International Conference on (pp. 2614-2618). IEEE.
  • Géraud, T. (2014, October). A morphological method for music score staff removal. In Image Processing (ICIP), 2014 IEEE International Conference on (pp. 2599-2603). IEEE.
  • Fischer, A., Visani, M., Kieu, V. C., \& Suen, C. Y. (2013, August). Generation of learning samples for historical handwriting recognition using image degradation. In Proceedings of the 2nd International Workshop on Historical Document Imaging and Processing (pp. 73-79). ACM.

2D defects

Add bleed-through, ink , adaptive blur, holes and other defects on your document images and use them for performance evaluation or retraining

Among all the defects available in docCreator, bleed-through defect is an adaptation of Moghaddam paper. The Shadow defect is an adptation of Kanungo degradation model

Some document images have been graciously given by the CESR and the BNF

3D defects

We can generate documents with realistic 3D distortions

XML groundtruth

DocCreator is able to create a synthetic document using only a text file

Use native docCreator fonts

Export the document as PNG and XML groundtruth

Import new fonts from real document images (image graciously provided by Gestform)

Use this new font to create similar document images

Create in 3 minutes thousands of synthetic document images

Download DOCCREATOR

If you use our work, please cite [Journal of Imaging]

DownloadDocCreator DMG

DownloadDocCreator windows installer

Download DocCreator Source-Code (200 MO)

Dockerfile.

        
          #Generates the container
          mv Dockerfile.txt Dockerfile
          docker build -t doccreator .
          
          
          #Run the docker image on Ubuntu
  
          xhost +local:docker
          sudo docker run -ti --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix  doccreator /bin/bash

          #or
          sudo docker run -ti --rm  -e "DISPLAY=unix:0.0" -v="/tmp/.X11-unix:/tmp/.X11-unix:rw" --privileged doccreator /bin/bash
          
          #from docker bash you can run the software with:
          DocCreator-master/build/software/DocCreator/DocCreator

             This program should compile under linux (with gcc & clang) and Mac OS (with clang). 
             It has been tested on Fedora (19->23), Ubuntu (14.04) and Mac OS (10.9->10.11).
            
             Dependencies
             ============

             The program uses the following libraries:
              -OpenCV (2.4.x or 3.x)
              - Qt 5
              -Tesseract is optional. If it is not found on the system, it will be compiled from (provided) sources. 
              However, you will need to have network access during the configuration step to download tessdata, tesseract languages data.
              -CMake is used for compilation.
              

              On Ubuntu (14.04 and above), 
              you can install the required binary packages with the following command:
              sudo apt-get install libopencv-dev qtbase5-dev qtdeclarative5-dev libqt5xmlpatterns5-dev cmake
              You can install tesseract with the following command:
              sudo apt-get install tesseract-ocr tesseract-ocr-fra libtesseract-dev libleptonica-dev

              On Fedora (21 or 22), you can install the required binary packages with the following command:
              yum install opencv-devel qt5-qtbase-devel qt5-qtxmlpatterns-devel cmake 
              On Fedora (23 and above), you can install the required binary packages with the following command:
              dnf install opencv-devel qt5-qtbase-devel qt5-qtxmlpatterns-devel cmake 
              You can install tesseract with the following command as root:
              dnf install tesseract tesseract-devel tesseract-langpack-fra leptonica leptonica-devel libpng-devel


              To compile with clang on linux:
              - you need to have libc++
              On Ubuntu, you can install libc++ with the following command:
              sudo apt-get install libc++-dev libc++abi-dev
              - you need to have OpenCV 3.1 or above.
              See below how to build OpenCV form sources.
            
              
              #OpenCV from sources

              You can also install OpenCV from sources (if it is not provided by your distribution or if you want a newer version for example).

              OpenCV is also built with CMake.
              You can use the following command to build a minimal OpenCV version compatable with DocCreator:

              cmake  -DCMAKE_INSTALL_PREFIX=

              -DBUILD_opencv_highgui=ON -DENABLE_FAST_MATH=ON -DBUILD_DOCS=OFF -DBUILD_PERF_TESTS=OFF 

              -DBUILD_TESTS=OFF -DWITH_CUDA=OFF -DWITH_CUFFT=OFF -DWITH_FFMPEG=OFF -DWITH_GIGEAPI=OFF 

              -DWITH_JASPER=OFF -DWITH_LIBV4L=OFF  -DWITH_MATLAB=OFF -DWITH_OPENCL=OFF 

              -DWITH_OPENCLAMDBLAS=OFF -DWITH_OPENCLAMDFFT=OFF -DWITH_OPENEXR=OFF -DWITH_PVAPI=OFF 

              -DWITH_V4L=OFF -DWITH_VTK=OFF -DWITH_WEBP=OFF -DWITH_1394=OFF -DBUILD_opencv_apps=OFF 

              -DBUILD_opencv_calib3d=OFF -DBUILD_opencv_features2d=OFF -DBUILD_opencv_flann=OFF 

              -DBUILD_opencv_ml=OFF -DBUILD_opencv_objdetect=OFF -DBUILD_opencv_shape=OFF 

              -DBUILD_opencv_stitching=OFF -DBUILD_opencv_superres=OFF  -DBUILD_opencv_ts=OFF 

              -DBUILD_opencv_video=OFF -DBUILD_opencv_videoio=ON -DBUILD_opencv_videostab=OFF 

              -DBUILD_opencv_world=OFF -DBUILD_opencv_highgui=ON -DPYTHON2_EXECUTABLE="" 

              -DPYTHON3_EXECUTABLE="" -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF 

              -DWITH_QUICKTIME=OFF -DHAVE_QTKIT=FALSE

              with corrected "PATH_TO_CMakeLists.txt" and "INSTALL_PREFIX".



 

              Compilation
              ------------
              CMake is used for configuration & compilation.
              The following commands allow to build DocumentCreator

              mkdir build
              cd build
              cmake ..
              make
              make install 

              You can specify the installation prefix to use with:
              cmake .. -DCMAKE_INSTALL_PREFIX="MyInstallationPrefix"
              You can then launch the executable:
              "MyInstallationPrefix"/bin/DocumentCreator


              #Download DocCreator Source-Code  (200 MO)
              unzip DocumentCreator.zip
              cd DocumentCreator
              mkdir build
              cd build
              cmake ..
              make
              Run
              ------------
              #Launch DocumentCreator executable
              software/DocumentCreator/DocumentCreator
            
                #MAC distribution (with Homebrew)
                #Need OpenCV and QT packages
                brew install qt5
                brew linkapps qt5
                brew link --force qt5
                brew tap homebrew/science
                brew install opencv

                #Download DocCreator Source-Code  (200 MO)
                unzip DocumentCreator.zip
                cd DocumentCreator
                mkdir build
                cd build
                cmake ..
                make

                #Launch DocumentCreator executable
                software/DocumentCreator/DocumentCreator
              
                TROUBLESHOOTING
                #if you encounter a problem with Qt during the cmake process it might comes from your PATH
                export PATH=/Users/XXX/Qt/5.4/clang_64/bin:$PATH
                #or (according to your system version)
                export PATH=/usr/local/opt/qt5/bin/:$PATH

                 
                  #if CMake does not find OpenCV, you may try to specify the directory containing OpenCVConfig.cmake            
                  OpenCV_DIR=/Users/XXX/tools/share/OpenCV
                  cmake ..

                  #if you encounter a problem during the make process it might be related to your C++11 configuration
                  #edit CMakeLists.txt.txt, and add (or remove) the following line before the first "ADD_SUBDIRECTORY" line
                  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
                  #then restart the construction process
                  rm -rf CMakeCache.txt CMakeFiles
                  cmake ..
                  make
                  cd ../documentcreator-build/software/AncientDocumentEditor/
                  ./AncientDocumentEditor




                

Download Databases

DOCCREATOR ONLINE


Upload an image and extract the font
(Works only on Firefox and Chrome.)

GO !


Upload an image and degrade it
(Works only on Firefox and Chrome.)

GO !


Create your own document
(Works only on Firefox and Chrome.)

GO !


3D deformation
(Works only on Firefox and Chrome.)

GO !

Contact us

Any Question?
Please Contact Journet Nicholas (journet[]labri.fr) or Boris Mansencal (boris.mansencal[]labri.fr)