Skip to content

Latest commit

 

History

History
73 lines (59 loc) · 3.14 KB

File metadata and controls

73 lines (59 loc) · 3.14 KB

Zebrafish Scan Processor

Main Purpose

This application processes high-resolution scanned images of 96-well scientific plates by doing the following:

  1. Monitors an input scans folder and automatically begins processing once the scan is complete.
  2. Splits the image into the two individual plates.
  3. Automatically detects the barcode on each plate to name the outputs automatically.
  4. Splits and names each well based on the scan creation datetime, plate number, and well location.
  5. Saves a compressed version of the individual plate image.
  6. MySQL INSERT/UPDATE allows for quick auditing of processed plates from a central database.
  7. At a designated time, transfers all processed plates to a network share/designated transfer folder.

Other Features

  • Overlays the detected barcode onto all processed images for easy sanity checking when analyzing images.
  • Minimizes to tray area for unobtrusive background processing.
  • Provides system notifications when plates are processed/fail.
  • Maintains logs of all detections, transfers, and failures.
  • Includes built-in calibration interface for easy adjustment to scanner and plate differences.
  • Allows for a custom MySQL query string for easy adaptation to different database layouts.
  • Saves full-resolution backups of failed plates to ensure data is not lost.
Special Note

The database section of this program does NOT hash the password. It is stored in plaintext in the registry. Please keep this in mind when creating a MySQL user for this application.

Screenshots

Processed Outputs

Full Plate & Well

Folder Structure & Explorer Preview

Application

Logs Screen

Settings - Plate Splitting

Settings - Plate Top

Settings - Plate Bottom

Settings - Files and Transfers

Settings - Database

System Notifications

Tray Icon

Example Database Output

Build Information

  • Python 3.7 64-bit
    • PyQt5
    • pyzbar
    • opencv
    • pillow
    • PyMySQL
    • numpy
    • qdarkstyle
    • qimage2ndarray
  • Executable built with pyinstaller
  • Installer built with NSIS