Skip to main content

The purpose of this project is to count the number of alive and dead pollens in an image.

Project description

PollEncOuNt

The purpose of this project is to count the number of alive and dead pollens in an image.

Contents

Installation

  1. Package installs
pip install PollEncOuNt

Outputs Demonstration

Raw Predicted

blue squares detected are alive, green squares detected ard dead.

count_result.csv summarizes the results after running the prediction process.

Filename Alive Dead
pollen_predicted.jpg 96 20

Usage

GUI

Launching the GUI

Open your terminal (Mac/Linux) or command line (Windows).

Launch the GUI by typing:

% peon

The PEON Main Menu will appear.

Main Menu

From the Actions menu, you can:

  1. Select Train to open the Train GUI.

  2. Select Predict to open the Predict GUI.

  3. Exit the application.

Predict GUI

A Pre-trained Model can directly be used for prediction.

  1. Open the Predict GUI:
  • From the main menu, go to Actions > Predict.
  1. Configure Prediction Settings:
  • Image Files: Click the Browse button and select one or more image files for prediction.
  • Model File: Click the Browse button to load the trained model file (.pt, .pth, or .onnx).
  • Project Save Directory: Click the Browse button to select the directory where the prediction results will be saved.
  • Pridect Settings:
    • Check the Save Images box to save the images with predictions.
    • Check the Save CSV box to save the results in a count_result.csv file.
    • Set the Confidence threshold (0-1) to filter detection results. Higher values result in fewer but more confident detections.
    • Set the Int./Union (IoU) threshold (0-1) used for non-maximum suppression. Higher values allow more overlapping bounding boxes (default: 0.5).
  1. Start Prediction:
  • Click the Start Prediction button to begin inference.
  • Real-time log updates will appear in the LOGS section.
  1. Reset Prediction:
  • Click the Reset button to clear inputs and logs.

Train GUI

  1. Open the Train GUI:
  • From the main menu, go to Actions > Train.
  1. Configure Training Settings:
  • Data YAML File: Click the Browse button and select a valid YAML file for training data.
  • Project Save Directory: Click the Browse button and choose the directory where training outputs (e.g., logs, model checkpoints) will be saved.
  • Model Selection:
    • For Pre-trained Models: Click the Browse button to select a .pt, .pth, or .onnx model file.
    • For YOLO Models: Use the dropdown menu to choose one of the YOLO models (e.g., yolov8n.pt).
  • Training Settings:
    • Set the number of Epochs for training.
    • Select the device (cpu or gpu) from the dropdown menu.
  1. Start Training:
  • Click the Start Training button to begin.
  • Monitor the real-time log updates in the LOGS section.
  1. Reset Training:
  • To reset the form, click the Reset button. This clears all input fields and logs.

Python API

Predict

A pre-trained model can directly be used for prediction(path: ./model/best.pt).

from peon import peon_predict

results = peon_predict(
    img_files=["IMG1", "IMG2", ...],
    model_path="MODEL_PATH",
    save_dir="SAVE_DIR",
    save_img=True,
    save_csv=True,
    conf_thres=0.2,
    iou_thres=0.5,
)

img_files: list[str]

  • List of image path to conduct prediction.

model_path: str:

  • Path to the YOLO model.

save_dir: str

  • Path to the directory to save the results. Required if save_img or save_csv is True.

save_img: bool (optional, defaults True)

  • Whether to save the predicted images.

save_csv: bool (optional, defaults True)

  • Whether to save the results to a CSV file.

conf_thres: float (optional, defaults 0.2)

  • Confidence threshold for filtering detections. Range 0-1. Higher values result in fewer but more confident detections.

iou_thres: float (optional, defaults 0.5)

  • Intersection over Union (IoU) threshold for non-maximum suppression. Range 0-1. Higher values allow more overlapping bounding boxes.

Train

from peon import peon_train

peon_train(
    data_path="DATA_PATH",
    save_dir="SAVE_DIR",
    model_path = "yolov8m.pt",
    epochs=100,
    device="cpu",
)

data_path: str

  • Path to the data .YAML file.

save_dir: str

  • Path to the directory to save the trained model.

model_path: str (optional, defaults "yolov8m.pt")

  • Path to the YOLO model.

epochs: int (optional, defaults 100)

  • Number of epochs for training.

device: str (optional, defaults "cpu")

  • Device to use for training.

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

pollencount-0.0.6.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

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

pollencount-0.0.6-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file pollencount-0.0.6.tar.gz.

File metadata

  • Download URL: pollencount-0.0.6.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for pollencount-0.0.6.tar.gz
Algorithm Hash digest
SHA256 ae21b2afe734cc064e33e24a5c39bfdaa993fa862140794beee231c83f7405ff
MD5 26fb47dc28e203af9b8f11ed0a9792a4
BLAKE2b-256 310154a79a761257c64ab480b7d45cca881a9823a2dcc840f101af62bb34103e

See more details on using hashes here.

File details

Details for the file pollencount-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: pollencount-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for pollencount-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 0b4941fb14cdc3ed4599fccaa739b3d72d45c8c7bbffa58e08d6ec6ff55a34a2
MD5 17116ec248fc919cbdd8cd2c21ca8408
BLAKE2b-256 f05db1882f45947f674357ae91f0ca8cdc8332f833c3487d73f97c6c8f2bbe1d

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