1. 27 Sep, 2024 4 commits
    • myhloli's avatar
      feat(draw_bbox): add option to toggle bounding box drawing · 43a57d56
      myhloli authored
      Introduce an additional argument `draw_bbox` in the `draw_bbox_with_number` function to
      enable toggling the drawing of bounding boxes on or off. When set to `False`, no bounding
      box will be drawn, allowing for situations where only text
      43a57d56
    • myhloli's avatar
      refactor(draw_bbox): add line sorting visualization · 34f89650
      myhloli authored
      Add a new function `draw_line_sort_bbox` to visualize the sorting of lines on each page.
      This includes indexing lines and handling both text and non-text elements such as tables
      and images for better content organization.
      
      Also, comment out GPU-related code for flexibility and remove overlaps in bounding box
      detection, which improves the accuracy of layout splitting.
      34f89650
    • myhloli's avatar
      refactor(pdf_parse_union): integrate LayoutLMv3 for block orderingReplace the... · 1efebe42
      myhloli authored
      refactor(pdf_parse_union): integrate LayoutLMv3 for block orderingReplace the heuristic-based block ordering algorithm with LayoutLMv3 model predictions toimprove the accuracy of block ordering on PDF pages. Additionally, refactor the span
      handling during block filling to ensure spans are correctly assigned.
      
      - Introduce LayoutLMv3ForTokenClassification from 'hantian/layoutreader' to predict block
        order.
      - Implement span replacement strategy to use pymu spans for non-OCR content.
      - Enhance cleanup process to free GPU memory more effectively after model use.
      - Adjust block ordering logic to use median line index for text, title, and interline equation blocks.
      - Refactor page parsing core logic for better maintainability.
      
      BREAKING CHANGE: The integration of LayoutLMv3 changes the internal block handling and
      ordering mechanism, which may affect downstream systems relying on the previous
      implementation. Ensure to test thoroughly before deployment.
      1efebe42
    • myhloli's avatar
      refactor(draw_bbox): clear cuda cache and update bbox sorting · 36220d69
      myhloli authored
      - Added CUDA cache clearing after layoutreader prediction to free up GPU memory.
      - Modified the bbox sorting logic to sort text and title blocks separately.
      - Adjusted drawing colors for better distinction in debug visualizations.
      36220d69
  2. 26 Sep, 2024 2 commits
    • myhloli's avatar
      refactor(draw_bbox): clear cuda cache and update bbox sorting · 00cda7a6
      myhloli authored
      - Added CUDA cache clearing after layoutreader prediction to free up GPU memory.
      - Modified the bbox sorting logic to sort text and title blocks separately.
      - Adjusted drawing colors for better distinction in debug visualizations.
      00cda7a6
    • myhloli's avatar
      feat(draw_bbox): add layout sorting visualization · 270ffb02
      myhloli authored
      Implement a new function `draw_layout_sort_bbox` in `draw_bbox.py` to visualize the
      layout sorting results using the `LayoutLMv3ForTokenClassification` model. This function
      predicts the order of layout elements and draws them in the sorted sequence on the PDF pages.
      270ffb02
  3. 25 Sep, 2024 1 commit
    • myhloli's avatar
      feat(draw_bbox): add layout sorting visualization · 3cbcf2de
      myhloli authored
      Implement a new function `draw_layout_sort_bbox` in `draw_bbox.py` to visualize the
      layout sorting results using the `LayoutLMv3ForTokenClassification` model. This function
      predicts the order of layout elements and draws them in the sorted sequence on the PDF pages.
      3cbcf2de
  4. 20 Sep, 2024 2 commits
  5. 19 Sep, 2024 4 commits
  6. 18 Sep, 2024 9 commits
  7. 13 Sep, 2024 2 commits
  8. 12 Sep, 2024 16 commits