1. 09 Apr, 2010 10 commits
  2. 19 Mar, 2010 2 commits
  3. 18 Mar, 2010 1 commit
    • Guillaume Lazzara's avatar
      Cleanup binarization tools. · e1a1cc37
      Guillaume Lazzara authored
      	* binarization/binarize.hh,
      	* binarization/simple.hh,
      	* binarization/sauvola_threshold.hh,
      	* src/binarization/simple.cc,
      	* src/binarization/sauvola_pgm.cc,
      	* src/binarization/sauvola_ms.cc,
      	* src/binarization/sauvola.cc: Rename as...
      
      
      	* binarization/local_threshold.hh,
      	* binarization/global_threshold_auto.hh,
      	* binarization/sauvola_threshold_image.hh,
      	* src/binarization/pgm_global_threshold_auto.cc,
      	* src/binarization/pgm_sauvola.cc,
      	* src/binarization/pgm_sauvola_ms.cc,
      	* src/binarization/ppm_sauvola.cc: ... this.
      
      	* binarization/global_threshold.hh,
      	* binarization/sauvola_ms_split.hh,
      	* src/binarization/ppm_fg_sauvola_ms.cc,
      	* src/binarization/ppm_sauvola_ms.cc,
      	* src/binarization/ppm_sauvola_ms_split.cc: New.
      
      	* binarization/internal/first_pass_functor.hh: Fix an include.
      
      	* binarization/sauvola.hh: Update code according to last renaming.
      
      	* binarization/sauvola_ms.hh: Invert threshold test and add
      	documentation.
      
      	* src/binarization/Makefile.am: Add new targets.
      
      	* tests/Makefile.am,
      	* tests/binarization/Makefile.am,
      	* tests/binarization/global_threshold.cc,
      	* tests/binarization/local_threshold.cc: New tests.
      e1a1cc37
  4. 17 Mar, 2010 1 commit
    • Guillaume Lazzara's avatar
      Update AFP's toolchain according to last changes in core classes. · 70d61a2d
      Guillaume Lazzara authored
      	* core/object_groups.hh: Add duplicate().
      
      	* primitive/group/apply.hh: Preserve components ids.
      
      	* draw/groups_bboxes.hh,
      	* filter/object_groups_with_holes.hh,
      	* primitive/regroup/from_single_left_link.hh: New.
      
      	* src/text_in_photo_ppm_fast.cc: Make it work with the new core
      	classes. Fix component ids issues when relabeling.
      70d61a2d
  5. 15 Mar, 2010 26 commits
    • Guillaume Lazzara's avatar
    • Guillaume Lazzara's avatar
      Add a new example for finding text in pictures. · b0562970
      Guillaume Lazzara authored
      	* src/Makefile.am: Add new target.
      
      	* src/text_in_photo_pbm_fast.cc: New.
      b0562970
    • Guillaume Lazzara's avatar
      First draft of the dematerialization wizard. · 4046dfe6
      Guillaume Lazzara authored
      	* demo/shared/icons/Symbols-Delete-icon.png,
      	* demo/shared/icons/accept-icon.png,
      	* demo/shared/icons/close.gif,
      	* demo/shared/icons/crop-icon.png,
      	* demo/shared/icons/image-add-icon.png,
      	* demo/shared/icons/image-edit-icon.png,
      	* demo/shared/icons/image-multi-icon.png,
      	* demo/shared/icons/image-next-icon.png,
      	* demo/shared/icons/image-remove-icon.png,
      	* demo/shared/icons/next-icon.png,
      	* demo/shared/icons/page-down-icon.png,
      	* demo/shared/icons/page-search-icon.png,
      	* demo/shared/icons/rotate_ccw.png,
      	* demo/shared/icons/rotate_cw.png,
      	* demo/shared/icons/search-add-icon.png,
      	* demo/shared/icons/search-remove-icon.png,
      	* demo/shared/shared.qrc,
      	* demo/shared/src/bak/crop_item.cc,
      	* demo/shared/src/bak/crop_item.hh,
      	* demo/shared/src/bak/image_viewer.cc,
      	* demo/shared/src/bak/image_viewer.hh,
      	* demo/shared/src/bak/types.hh,
      	* demo/shared/src/browse_widget.cc,
      	* demo/shared/src/browse_widget.hh,
      	* demo/shared/src/crop_item.cc,
      	* demo/shared/src/crop_item.hh,
      	* demo/shared/src/image_viewer.cc,
      	* demo/shared/src/image_viewer.hh,
      	* demo/shared/src/internal.bak/interactive_scene.cc,
      	* demo/shared/src/internal.bak/interactive_scene.hh,
      	* demo/shared/src/internal.bak/selection_rectangle.cc,
      	* demo/shared/src/internal.bak/selection_rectangle.hh,
      	* demo/shared/src/internal/interactive_scene.cc,
      	* demo/shared/src/internal/interactive_scene.hh,
      	* demo/shared/src/internal/selection_rectangle.cc,
      	* demo/shared/src/internal/selection_rectangle.hh,
      	* demo/shared/src/to_mln_image.hh,
      	* demo/shared/src/types.hh,
      	* demo/shared/ui/browse_widget.ui,
      	* demo/shared/ui/crop_widget.ui,
      	* demo/shared/ui/image_viewer.ui,
      	* demo/shared/ui/interactive_scene.cc,
      	* demo/shared/ui/interactive_scene.hh,
      	* demo/shared/ui/rotate_widget.ui,
      	* demo/wizard/images/dematerialization.png,
      	* demo/wizard/src/crop_page.cc,
      	* demo/wizard/src/crop_page.hh,
      	* demo/wizard/src/crop_widget.cc,
      	* demo/wizard/src/crop_widget.hh,
      	* demo/wizard/src/doc_type.hh,
      	* demo/wizard/src/doc_type_page.cc,
      	* demo/wizard/src/doc_type_page.hh,
      	* demo/wizard/src/doc_type_widget.cc,
      	* demo/wizard/src/doc_type_widget.hh,
      	* demo/wizard/src/load_page.cc,
      	* demo/wizard/src/load_page.hh,
      	* demo/wizard/src/load_widget.cc,
      	* demo/wizard/src/load_widget.hh,
      	* demo/wizard/src/main.cc,
      	* demo/wizard/src/main_window.cc,
      	* demo/wizard/src/main_window.hh,
      	* demo/wizard/src/mln_widgets.cc,
      	* demo/wizard/src/preprocessing_page.cc,
      	* demo/wizard/src/preprocessing_page.hh,
      	* demo/wizard/src/preprocessing_task.hh,
      	* demo/wizard/src/preprocessing_widget.cc,
      	* demo/wizard/src/preprocessing_widget.hh,
      	* demo/wizard/src/process_page.cc,
      	* demo/wizard/src/process_page.hh,
      	* demo/wizard/src/process_widget.cc,
      	* demo/wizard/src/process_widget.hh,
      	* demo/wizard/src/rotate_page.cc,
      	* demo/wizard/src/rotate_page.hh,
      	* demo/wizard/src/rotate_widget.cc,
      	* demo/wizard/src/rotate_widget.hh,
      	* demo/wizard/src/runner.cc,
      	* demo/wizard/src/runner.hh,
      	* demo/wizard/src/test.cc,
      	* demo/wizard/ui/doc_type_widget.ui,
      	* demo/wizard/ui/load_widget.ui,
      	* demo/wizard/ui/main_window.ui,
      	* demo/wizard/ui/preprocessing_widget.ui,
      	* demo/wizard/wizard.pro,
      	* demo/wizard/wizard.qrc: New.
      4046dfe6
    • Guillaume Lazzara's avatar
      Update examples. · cae5c856
      Guillaume Lazzara authored
      	* src/text_in_photo_ppm_fast.cc,
      	* src/debug/show_links_bottom_aligned.cc,
      	* src/debug/show_links_top_aligned.cc: Update calls to routines.
      
      	* src/preprocessing/trash.cc,
      	* src/text_in_photo_ppm_fast_2.cc,
      	* src/preprocessing/split_bg_fg_ms.cc,
      	* src/preprocessing/denoising.cc: Removed.
      
      	* src/preprocessing/denoise.cc,
      	* src/preprocessing/homogeneous_contrast.ccm,
      	* src/preprocessing/subsample.cc: New.
      
      	* src/preprocessing/Makefile.am: Add new files as target.
      
      	* src/preprocessing/split_bg_fg.cc: Fix usage.
      
      	* src/text_in_article.cc: Update processing chain.
      cae5c856
    • Guillaume Lazzara's avatar
      Improve text line merging algorithm. · de558e1f
      Guillaume Lazzara authored
      	* text/merging.hh: Change merge rules and improve integration with
      	Scribo line structures.
      de558e1f
    • Guillaume Lazzara's avatar
      Add a reconstruction algorithm. · ec5a4728
      Guillaume Lazzara authored
      	* primitive/internal/rd.hh: New.
      ec5a4728
    • Guillaume Lazzara's avatar
      Small fixes. · 2d5c9e76
      Guillaume Lazzara authored
      	* binarization/sauvola_ms.hh: Add a missing include.
      
      	* binarization/sauvola_threshold.hh: Remove debug and useless
      	comments.
      
      	* preprocessing/unskew.hh: Fix invalid guards.
      
      	* primitive/extract/components.hh: Fill image extension.
      
      	* primitive/extract/lines_pattern.hh: Adjust and fill image
      	extension.
      
      	* primitive/extract/lines_v_thick.hh: Fix traces.
      2d5c9e76
    • Guillaume Lazzara's avatar
      Add new preprocessing routines. · b8b44828
      Guillaume Lazzara authored
      	* preprocessing/denoise.hh,
      	* preprocessing/denoise_bg.hh,
      	* preprocessing/denoise_fg.hh,
      	* preprocessing/homogeneous_contrast.hh,
      	* preprocessing/rotate_90.hh: New routines.
      
      	* fun/v2b/label_to_bool.hh: New function.
      
      	* tests/preprocessing/Makefile.am,
      	* tests/preprocessing/rotate_90.cc: New test.
      b8b44828
    • Guillaume Lazzara's avatar
      Update code according to last changes in Scribo core classes. · 1e6a267b
      Guillaume Lazzara authored
      	* draw/bounding_box_links.hh,
      	* primitive/internal/init_link_array.hh,
      	* primitive/internal/is_link_valid.hh,
      	* primitive/link/internal/link_single_dmax_base.hh,
      	* src/afp/link.hh: Update the use of object_link class.
      
      	* draw/bounding_boxes.hh,
      	* filter/objects_with_holes.hh,
      	* src/afp/regroup.hh: Update for_all macro.
      
      	* estim/object_groups_v_thickness.hh,
      	* filter/object_groups_small.hh,
      	* filter/object_groups_v_thickness.hh,
      	* text/recognition.hh: Update access to component_set.
      
      	* filter/object_links_bbox_h_ratio.hh,
      	* filter/object_links_bbox_overlap.hh,
      	* filter/object_links_bbox_ratio.hh,
      	* filter/object_links_bottom_aligned.hh,
      	* filter/object_links_non_aligned_simple.hh,
      	* filter/object_links_top_aligned.hh,
      	* primitive/group/apply.hh,
      	* primitive/group/from_single_link.hh,
      	* primitive/link/merge_double_link.hh,
      	* primitive/link/with_single_right_link_bottom.hh,
      	* primitive/link/with_single_right_link_dmax_ratio.hh,
      	* primitive/link/with_single_right_link_top.hh: Improve routine
      	prototypes.
      
      	* primitive/link/internal/link_functor_base.hh: Make use of
      	separators if exist.
      1e6a267b
    • Guillaume Lazzara's avatar
      Improve debug routines in Scribo. · 3a3cd53c
      Guillaume Lazzara authored
      	* debug/bboxes_enlarged_image.hh,
      	* debug/looks_like_a_text_line_image.hh,
      	* debug/mean_and_base_lines_image.hh: New routines.
      
      	* debug/alignment_decision_image.hh,
      	* debug/decision_image.hh,
      	* debug/save_bboxes_image.hh: Update code according to last
      	changes in core classes.
      
      	* debug/usage.hh: Make the description optional.
      3a3cd53c
    • Guillaume Lazzara's avatar
      Improve core classes in Scribo. · 94a1f48d
      Guillaume Lazzara authored
      	* core/component_info.hh,
      	* core/component_set.hh: Add new methods and an output operator.
      
      	* core/line_info.hh: Add new methods and improve stats computation.
      
      	* core/line_set.hh: Add new methods.
      
      	* core/macros.hh: Add more specific macros.
      
      	* core/tag/component.hh,
      	* core/tag/line.hh: Add output operators.
      94a1f48d
    • Guillaume Lazzara's avatar
      Share internal data in groups and links structures. · cb3ec8ce
      Guillaume Lazzara authored
      	* core/object_groups.hh,
      	* core/object_links.hh: Share internal data using a tracked
      	pointer.
      cb3ec8ce
    • Guillaume Lazzara's avatar
    • Guillaume Lazzara's avatar
      Add a small tool to recognize text in a binary image. · ced2be00
      Guillaume Lazzara authored
      	* src/text/Makefile.am: New target.
      
      	* src/text/pbm_recognition.cc: New.
      
      	* text/recognition.hh: Add an overload taking an image as
      	argument.
      ced2be00
    • Guillaume Lazzara's avatar
    • Guillaume Lazzara's avatar
      Add a subsampling algorithm. · c803910e
      Guillaume Lazzara authored
      	* subsampling/integral.hh: New. Compute a subsample image and an
      	integral image at the same time.
      c803910e
    • Guillaume Lazzara's avatar
      Add a first draft of a text line merging algorithm. · 7dc506b4
      Guillaume Lazzara authored
      	* text/merging.hh: New.
      7dc506b4
    • Guillaume Lazzara's avatar
      Add and update examples. · a0c8b8d5
      Guillaume Lazzara authored
      	* src/Makefile.am,
      	* src/binarization/Makefile.am,
      	* src/preprocessing/Makefile.am: Add new targets.
      
      	* src/preprocessing/denoising.cc: New.
      
      	* src/preprocessing/split_bg_fg.cc: Fix usage.
      
      	* src/text_in_article.cc,
      	* src/text_in_photo_ppm_fast.cc: Update code according last
      	changes in core classes.
      
      	* src/text_in_photo_ppm_fast_2.cc: New example.
      a0c8b8d5
    • Guillaume Lazzara's avatar
      Small fixes. · 6dc7e439
      Guillaume Lazzara authored
      	* binarization/sauvola_ms.hh: Remove a useless include.
      
      	* debug/usage.hh: Move description output.
      
      	* io/xml/save_text_lines.hh: Fix invalid xml output.
      
      	* primitive/link/internal/link_ms_dmax_ratio_base.hh,
      	* primitive/link/internal/link_single_dmax_ratio_base.hh: update
      	distance criterion.
      
      	* scribo.mk: Change compilation flags.
      
      	* src/afp/components.hh: Merge data in only one array.
      
      	* tests/filter/Makefile.am,
      	* tests/filter/objects_with_holes.cc: New test.
      
      	* text/clean.hh: use upsampling::hq4x instead of upsampling::hq2x.
      6dc7e439
    • Guillaume Lazzara's avatar
      Keep updating code according to last changed in core classes. · 470ab859
      Guillaume Lazzara authored
      	* debug/decision_image.hh,
      	* debug/save_linked_bboxes_image.hh,
      	* draw/bounding_boxes.hh,
      	* estim/object_groups_v_thickness.hh,
      	* filter/common/objects_photo.hh,
      	* filter/internal/compute.hh,
      	* filter/object_groups_size_ratio.hh,
      	* filter/object_groups_small.hh,
      	* filter/object_groups_v_thickness.hh,
      	* filter/object_links_bbox_overlap.hh,
      	* filter/object_links_bottom_aligned.hh,
      	* filter/object_links_non_aligned_simple.hh,
      	* filter/objects_thick.hh,
      	* filter/objects_thin.hh,
      	* filter/objects_with_holes.hh,
      	* primitive/group/apply.hh,
      	* primitive/group/from_double_link.hh,
      	* primitive/group/from_single_link.hh,
      	* primitive/link/internal/link_single_dmax_base.hh,
      	* primitive/link/with_single_left_link.hh,
      	* primitive/link/with_single_right_link.hh,
      	* src/afp/link.hh,
      	* src/afp/regroup.hh,
      	* text/recognition.hh: Update the use of core classes. Replace the
      	use of object_image with component_set.
      470ab859
    • Guillaume Lazzara's avatar
      Improve core classes. · 8b7c177b
      Guillaume Lazzara authored
      	* scribo/core/component_info.hh,
      	* scribo/core/component_set.hh,
      	* scribo/core/line_info.hh,
      	* scribo/core/line_set.hh,
      	* scribo/core/object_groups.hh: Add more methods and constructors.
      
      	* scribo/core/macros.hh: Add a new macro.
      
      	* scribo/core/tag/line.hh: Add more enums.
      8b7c177b
    • Guillaume Lazzara's avatar
      2082dbe0
    • Guillaume Lazzara's avatar
      Move Scribo demo. · a26809df
      Guillaume Lazzara authored
      	* demo/Makefile.am,
      	* demo/demo.pro,
      	* demo/demo.qrc,
      	* demo/icons/document-open.png,
      	* demo/icons/edit-find.png,
      	* demo/icons/format-indent-more.png,
      	* demo/icons/go-next.png,
      	* demo/icons/image-x-generic.png,
      	* demo/icons/list-add.png,
      	* demo/icons/ocr.png,
      	* demo/icons/text-x-generic.png,
      	* demo/icons/view-refresh.png,
      	* demo/icons/x-office-spreadsheet.png,
      	* demo/src/main.cc,
      	* demo/src/mainwindow.cc,
      	* demo/src/mainwindow.hh,
      	* demo/ui/mainwindow.ui: Move...
      
      	* demo/review/Makefile.am,
      	* demo/review/icons/document-open.png,
      	* demo/review/icons/edit-find.png,
      	* demo/review/icons/format-indent-more.png,
      	* demo/review/icons/go-next.png,
      	* demo/review/icons/image-x-generic.png,
      	* demo/review/icons/list-add.png,
      	* demo/review/icons/ocr.png,
      	* demo/review/icons/text-x-generic.png,
      	* demo/review/icons/view-refresh.png,
      	* demo/review/icons/x-office-spreadsheet.png,
      	* demo/review/review.pro,
      	* demo/review/review.qrc,
      	* demo/review/src/main.cc,
      	* demo/review/src/mainwindow.cc,
      	* demo/review/src/mainwindow.hh,
      	* demo/review/ui/mainwindow.ui: ... here.
      a26809df
    • Guillaume Lazzara's avatar
      Small fixes in Milena. · 978d82a0
      Guillaume Lazzara authored
      	* milena/mln/accu/center.hh: Add nsites() member.
      
      	* milena/mln/accu/pair.hh: Provide access to the underlying accus.
      
      	* milena/mln/accu/stat/variance.hh: Use literal::zero.
      
      	* milena/mln/core/internal/labeled_image_base.hh: Indent.
      
      	* milena/mln/core/site_set/box.hh: Rename center() as pcenter().
      
      	* milena/mln/labeling/blobs_and_compute.hh: Return the array of
      	accumulators.
      
      	* milena/mln/labeling/colorize.hh: Make sure a color is not used
      	twice in the same image.
      
      	* milena/mln/labeling/compute.hh: Add a new overload.
      
      	* milena/mln/transform/influence_zone_geodesic.hh: Fix a
      	segmentation fault when an image had a border.
      978d82a0
    • Guillaume Lazzara's avatar
    • Guillaume Lazzara's avatar
      Introduce new Scribo core classes and start using them. · 03f61d76
      Guillaume Lazzara authored
      	* scribo/core/component_info.hh,
      	* scribo/core/component_set.hh,
      	* scribo/core/line_info.hh,
      	* scribo/core/line_set.hh,
      	* scribo/core/macros.hh,
      	* scribo/core/object_groups.hh,
      	* scribo/core/object_links.hh,
      	* scribo/core/tag/anchor.hh,
      	* scribo/core/tag/component.hh,
      	* scribo/core/tag/line.hh: New core classes.
      
      	* scribo/core/object_image.hh: Remove.
      
      	* scribo/core/anchors.hh
      	* scribo/primitive/extract/objects.hh: Rename as...
      
      	* scribo/primitive/link/internal/compute_anchor.hh,
      	* scribo/primitive/extract/components.hh: ... this.
      
      	* scribo/draw/bounding_box_links.hh,
      	* scribo/filter/object_links_bbox_h_ratio.hh,
      	* scribo/filter/object_links_bbox_ratio.hh,
      	* scribo/filter/objects_small.hh,
      	* scribo/fun/v2b/objects_small_filter.hh,
      	* scribo/primitive/group/apply.hh,
      	* scribo/primitive/group/from_single_link.hh,
      	* scribo/primitive/internal/find_root.hh,
      	* scribo/primitive/internal/init_link_array.hh,
      	* scribo/primitive/link/compute.hh,
      	* scribo/primitive/link/internal/find_link.hh,
      	* scribo/primitive/link/internal/find_several_links.hh,
      	* scribo/primitive/link/internal/link_functor_base.hh,
      	* scribo/primitive/link/internal/link_several_dmax_base.hh,
      	* scribo/primitive/link/internal/link_single_dmax_base.hh,
      	* scribo/primitive/link/internal/link_single_dmax_ratio_base.hh,
      	* scribo/primitive/link/merge_double_link.hh,
      	* scribo/primitive/link/with_single_left_link_dmax_ratio.hh,
      	* scribo/primitive/link/with_single_right_link_bottom.hh,
      	* scribo/primitive/link/with_single_right_link_dmax_ratio.hh,
      	* scribo/primitive/link/with_single_right_link_top.hh: Make use of
      	the new core classes.
      03f61d76