Skip to main content

A lightweight library for bounding box processing, filtering using predefined scenarii.

Project description

/**

  • @mainpage agoralib
  • @section description
  • Cette bibliothèque permet d'appliquer des règles de filtrage sur des bounding boxes arborescentes
  • (issues d'images 2D). Les règles sont définies dans un fichier JSON et permettent de modifier,
  • fusionner, supprimer ou reclasser des régions selon leur position, forme, ou proximité.
  • Les BB doivent etre les enfant/children d'une BBox "page" à ne jamais supprimer.
  • Cette BB fournit les infos sur l'image de la page a traiter.
  • Les parameètres des regles sont exprimés en % des tailles de la page (pas en pixels)
  • @section usage
  • @code
  • see main_agoralib.py

  • from agoralib.core import BoundingBoxProcessor
  • processor = BoundingBoxProcessor()
  • processor.load_rules("./samples/FINAL_MODEL_rules2.json")
  • processor.display_rules()
  • processor.load_bboxes("./samples/FINAL_MODEL_bbs.json")
  • processor.display_bboxes()
  • processor.apply_rules()
  • processor.display_bboxes()
  • processor.save_bboxes("./samples/output.json")
  • @endcode
  • @section requirement
    • detection.py : pseudo-regle qui necessite "pip install opencv-python numpy requests".
  • (cette regle crée de nouvelles BB qui remplacent les BB existantes par extraction de composantes connexes)
  • @section structure
    • core.py : logique principale de traitement
    • utils.py : fonctions utilitaires pour gérer les structures
    • rules/ : contient les implémentations de chaque type de règle
  • @section documentation
    • detection.py : threshold = seuil de binarisation [1-254] - 0 = Otsu / areamin = taille mini d'une BB en % surface de la page
    • info.py : donne info sur le scenario - ne fait rien sur les bB
    • delete.py : supprime BB selon label (pb si enfant ?)
    • position.py : position de du centre de la BB avec xmin, xmax en % de largeur de la page - ymin, ymax en % de hauteur de page - si xmax ou ymax = 0.0 => dimension ignorée
    • shape.py : taille de la BB avec xmin, xmax en % de largeur de la page - ymin, ymax en % de hauteur de page - si xmax ou ymax = 0.0 => dimens
  •          ratio Largeur / Hauteur entre rmin et rmax - ignoré si rmax = 0.0 
    
    • proximlity.py : distance bord à bord des BB avec xmin (left) , xmax (right) en % de largeur de la page - ymin (top), ymax (bottom) en % de hauteur de page - avec ratio de superposition > 25% dans l'autre dimension
  •               (dxleft <= self.params['xmin'] or dxright <= self.params['xmax']) and m["x_overlap_ratio"] >= 0.25 ) or ( (dytop <= self.params['ymin'] or dybottom <= self.params['ymax']) and m["y_overlap_ratio"] >= 0.25 ) :
    
    • merge.py : fusion comme enfants d'une nouvelle BB si distance bord à bord des BB avec xmin (left) , xmax (right) en % de largeur de la page - ymin (top), ymax (bottom) en % de hauteur de page - avec ratio de superposition > 25% dans l'autre dimension
  •               (dxleft <= self.params['xmin'] or dxright <= self.params['xmax']) and m["x_overlap_ratio"] >= 0.25 ) or ( (dytop <= self.params['ymin'] or dybottom <= self.params['ymax']) and m["y_overlap_ratio"] >= 0.25 ) :
    

*/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agoralib-0.1.2.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agoralib-0.1.2-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file agoralib-0.1.2.tar.gz.

File metadata

  • Download URL: agoralib-0.1.2.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.18

File hashes

Hashes for agoralib-0.1.2.tar.gz
Algorithm Hash digest
SHA256 742819bca907eadd733978c5709dcb3d2267652eae6ff2378477902e7d22ac1c
MD5 f9cfd971c13af40af9086bd56e8b9c57
BLAKE2b-256 91b025cf60428dd9d35feea87dc40af7ce231f00d7a8a5424d99c13d2fed3f45

See more details on using hashes here.

File details

Details for the file agoralib-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: agoralib-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.18

File hashes

Hashes for agoralib-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 41352e60c24c77aa161bb33ce9a216986c5d7db5752e67ef8d6205cacc28f989
MD5 c17addabd3c80aa40d750460808a3296
BLAKE2b-256 c1ae6dbf74d9cf6fc8869a8800750798682ecdd62de3acf556eddcdeafe18c78

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page