Skip to main content

This toolkit aids in analyzing drop sliding on tilted plates, allowing researchers to study various variables and their correlations in detail.

Project description

Deep Learning to Analyze Sliding Drops (Cite Us)

The 4S-SROF toolkit is designed to solve existing challenges in analyzing the sliding motion of drops on tilted plates. It enables researchers to conduct detailed studies by considering a wide range of variables and their correlations.

Key features include:

  • Super-Resolution Enhancement: The toolkit enlarges images by an up-scale ratio of 3 using a super-resolution model trained on a dataset of 14,000 sliding drop images.
  • Comprehensive Analysis: Extracts various criteria from the super-resolution images to provide precise insights into drop behavior.
  • Optimized Contact Angle Measurement: Contact angles are measured using an optimized polynomial method, as described in the accompanying manuscript.

The 4S-SROF toolkit streamlines complex image processing tasks, empowering researchers with high-quality data for in-depth analysis.

graphical abstract


Data Information

Drop Profile Video

  • File: drop_profile.mp4

    This video illustrates a sliding drop on a sample with a defect in the middle:

    • The first drop in the upper part of the video is the real drop image after preprocessing. Key preprocessing steps include:
      • Calculating the tilt angle and aligning frames horizontally.
      • Removing noise and background.
      • Detecting the drop position (marked by red lines).
    • The second drop (larger image) represents the drop after applying a super-resolution model.
    • Below that, the drop contour is extracted, and parameters such as contact angles (CAs), drop height, and drop length are displayed.
    • On the left, four plots analyze how the drop slides over a defected sample.

Preview the video on GitHub


Instructions

  • File: instructions.md

    This file is a comprehensive guide designed to assist researchers in setting up and using the analysis toolkit. It has two general sections: one focused on setting up the environment and another on effectively using the code.

    • How to Set Up:
      This section guides you through the installation of Python, Anaconda, and Jupyter Notebook. It explains how to download the code repository, prepare your working directory, and ensure all necessary libraries are installed for a seamless setup.

    • How to Use:
      This section provides detailed steps for preparing video frames, creating and marking the slope folder, and running the analysis code. It also explains how to configure experiment-specific variables and interpret the generated outputs, such as result.xlsx and analyzed frame outputs.


Control Panel

  • File: Control Panel.ipynb

    This file contains the main executable code for the toolkit. It acts as a central hub, calling other .py files and libraries to perform the analysis. The code processes the video frames, extracts features, and generates the final result.xlsx file containing the analyzed time-series data. It integrates all steps of the workflow, making it easy to convert raw video frames into meaningful results.


PFOTS Sample with a Defect

  • Files: PFOTS sample with a defect.zip.001 - .007

    These files contain a sample of sliding drop video frame examples that have been processed using the code, including results from all steps of the analysis. You can use this sample to try the code and gain a better understanding of how it works. It serves as a practical example to help you learn more about the workflow and outputs of the analysis toolkit.


Tutorial

  • File: tutorial.ipynb

    This file contains examples that demonstrate how the code's functions work in detail. It is designed for researchers who are familiar with coding and want to leverage the provided functions for tasks such as detecting surface slopes, extracting drop edges, or identifying appropriate video frames where only one droplet is present in the frame automatically.

    If you are not familiar with coding or prefer to use the toolkit quickly for analyzing sliding drop videos, you may skip this file.


Dataset

  • Description: The dataset contains 14,000 sliding drop images used to train the modified super-resolution model.
  • Access: Download the dataset

ESPCN Super-Resolution Model Weights

  • File: SuperRes_weights.h5

    This file contains the weights for the modified ESPCN super-resolution model, trained on 14,000 sliding drop images.


Python Files

The following .py files are included in the toolkit and provide functions for related image processing tasks:

  • angle_detection.py
  • baseline_detection.py
  • criteria_definition.py
  • edge_superres.py
  • tools.py
  • visualization.py

These scripts are essential for researchers working with this toolkit.


Libraries and Versions

Below is a list of the libraries and their corresponding versions used in this project:

Library Version Link
TensorFlow 2.5.0 tensorflow
Keras 2.9.0 keras
OpenCV (cv2) 4.5.4 opencv-python
SciPy 1.7.1 scipy
Pillow (PIL) 8.4.0 Pillow
NumPy 1.20.3 numpy
Pandas 1.3.4 pandas
Matplotlib 3.4.3 matplotlib
Natsort 8.4.0 natsort

Each library name links to its official PyPI page for more details.


Citation

If you find "Deep Learning to Analyze Sliding Drops" useful for your research, please consider citing the paper using the following information:

    
@article{shumaly2023deep,
  title={Deep learning to analyze sliding drops},
  author={Shumaly, Sajjad and Darvish, Fahimeh and Li, Xiaomei and Saal, Alexander and Hinduja, Chirag and Steffen, Werner and Kukharenko, Oleksandra and Butt, Hans-J{\"u}rgen and Berger, R{\"u}diger},
  journal={Langmuir},
  volume={39},
  number={3},
  pages={1111--1122},
  year={2023},
  publisher={ACS Publications}
}
    
  

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

sfof4s-1.0.3.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

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

SFOF4S-1.0.3-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file sfof4s-1.0.3.tar.gz.

File metadata

  • Download URL: sfof4s-1.0.3.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for sfof4s-1.0.3.tar.gz
Algorithm Hash digest
SHA256 f15e86c57fae81a6629ecc5f5d8aa37ca583ff428ab7945d40a4fe04c01cd366
MD5 1675ea5b293d40a73953af4044917f08
BLAKE2b-256 39de15c3b69f9d092a0d157888512751c5ddf2ec2ee7c4ec460c3dc45f2b14fe

See more details on using hashes here.

File details

Details for the file SFOF4S-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: SFOF4S-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 16.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for SFOF4S-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3ec3397279cf3e66692778bd0198a9c706304cfab6cb0583c20c0d4254241313
MD5 d30075f54f5c09bb37e246a60822c52b
BLAKE2b-256 e08b6c4a7962af9110331f44d3f043b70034f2e6cd4b0a842dd540ad187ab92c

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