Metadata-Version: 2.4
Name: ultrasound_processing_package_minimal
Version: 0.1.3
Summary: Ultrahangos képfeldolgozó Python csomag (minimal változat)
Author-email: Mart <mart@example.com>
Project-URL: Homepage, https://github.com/Mart-SciecPyt/ultrasound-processing-minimal
Project-URL: Documentation, https://ultrasound-processing-minimal.readthedocs.io
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: matplotlib
Requires-Dist: opencv-python
Requires-Dist: Pillow
Requires-Dist: scipy

.. ultrasound_processing_package documentation master file, created by
   sphinx-quickstart on 2025-04-29.
   You can adapt this file completely to your liking, but it should at least
   contain the root toctree directive.

Ultrasound Processing Package
=============================

Ultrasound processing package is a Python toolbox designed for the purpose of
preprocessing and transformation of ultrasound images. It provides three core
capabilities: Convert curved ultrasound scans into flat images, Filtering the
contour of a selected object by intensity thresholding, Convert back to curved
ultrasound scans. The transformations are essential for the thresholding so we
can search for peaks using Cartesian coordinates instead of polar coordinates.
These modules will be the fundamentals of point cloud generation based on
ultrasound images.


.. toctree::
   :maxdepth: 1
   :caption: Modules

   transform
   mask
   transform_back



Description
===========

1. Preprocessing and Transforming Images
   --------------------------------------
   In this module we are preprocessing the image and we transform it to a
   “flat” format. We convert the input image to grayscale and detect
   centimeter calibration marks along both axes. The image is then cleaned
   by removing irrelevant top and side regions and outlier pixel values.
   Based on peak detection, the module estimates the geometric parameters
   of the scan area and transducer settings, such as the offset and scanning depth.
   Using trigonometric relations, it constructs a polar-to-Cartesian grid.
   We use bilinear interpolation to project the image onto a uniform Cartesian space.

.. raw:: html

   <div style="margin-top:30px;"></div>

   
2. Filtering of the Ultrasound Images
   -----------------------------------
   In this module, we first generate a binary mask by thresholding the input
   image: pixels with intensity at or above the specified threshold are set to
   white (255), and those below are set to black (0). After removing noise
   components, we scan each column to select the very first pixel whose
   intensity exceeds the threshold, building an initial contour mask. Next, we
   apply OpenCV’s functions to thicken that contour for clear visualization.
   Finally, we apply the dilated contour as a mask to preserve and display the
   original pixel intensities.

.. raw:: html

   <div style="margin-top:30px;"></div>

   

3. Backtransformation
   ------------------
   In this module we reverse the transformation process,
   converting polar image data back into Cartesian coordinates. We first
   initialize key transformation parameters and build a 3D volume grid using
   spherical coordinates. The grid is filtered to exclude regions outside the
   region of interest. Using bilinear interpolation, we project back the masked
   image to the grid.
.. raw:: html

   <div style="margin-top:50px;"></div>

   

.. image:: diagram3.png
   :width: 767px
   :height: 440px
   :align: center
   :alt: Description for screen readers



.. raw:: html

   <div style="margin-top:70px;"></div>


Usage
=====

Installation
------------
To install:

.. code-block:: bash

   pip install ultrasound-processing-package-minimal

Make sure to set the proper paths to the files.

Requirements
------------


- Python 3.7 or higher
- NumPy
- OpenCV
- Matplotlib
- Scikit-image
- Scipy


Example
-------
Hyperlinked notebook: Example notebook https://github.com/Mart-SciecPyt/ScPytone_ultrasound_processing/blob/main/example.ipynb

Github repository link:

https://github.com/Mart-SciecPyt/ultrasound-processing-minimal
