Skip to content

A collection of numerical experiments and optimization techniques applied to linear algebra and image processing, implemented in Python.

Notifications You must be signed in to change notification settings

antoalat/Numerical-Methods-and-Imaging-in-Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Numerical-Methods-and-Imaging-in-Python

A collection of numerical experiments and optimization techniques applied to linear algebra and image processing, implemented in Python.

Project Structure

/src
├── notebooks/          # Jupyter Notebooks with analyses
│   ├── numerical_basics.ipynb
│   ├── optimization_and_polynomial_fitting.ipynb
│   └── inverseproblems_and_imaging.ipynb
│
├── src/                # Reusable Python source code
│   └── ProblemiInversi/
│
├── data/               # Data files (CSV, images, etc.)
│   ├── data_hw.csv
│   └── bologna.jpg
│
├── .gitignore         
└── README.md        

Contents

This collection features several key projects, each located in the notebooks/ directory:

  • numerical_basics.ipynb: An introduction to fundamental numerical methods, including:

    • Root-finding algorithms (Bisection, Fixed-Point Iteration, and Newton's Method).
    • Solving systems of linear equations using LU, Singular Value Decomposition (SVD).
  • optimization_and_polynomial_fitting.ipynb: A practical look at optimization, featuring:

    • Data approximation using polynomial fitting and least squares.
    • Implementation of the Gradient Descent algorithm with both fixed and backtracking line search strategies.
  • inverseproblems_and_imaging.ipynb: An exploration of inverse problems and regularization techniques, with a focus on:

    • Picard condition and TSVD.
    • Image deblurring as a primary application.
    • Solving ill-posed problems using Truncated SVD (TSVD) and Tikhonov regularization.

Tech Stack

  • Language: Python
  • Core Libraries:
    • NumPy for numerical operations.
    • Pandas for data manipulation and analysis.
    • Matplotlib for data visualization.
    • SciPy for scientific and technical computing.
    • Scikit-image for image processing tasks.
  • Environment: Jupyter Notebook

About

A collection of numerical experiments and optimization techniques applied to linear algebra and image processing, implemented in Python.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published