This project focuses on recreating an existing image using curve estimation and mathematical interpolation techniques.
The main goal was to approximate the shapes and outlines of an image by computing and plotting Bezier and spline curves, effectively generating a drawing that mimics the original.
Instead of pixel-by-pixel replication, the project uses mathematical modeling of curves to create a close reprezentation of the image.
This approach demonstrates how computational geometry and curve-fitting algorithms can be applied to digital art and image analysis.
The implementation involves several classical algorithms and techniques, including:
- Bezier Curves – used for generating smooth, mathematically defined shapes based on control points.
- FMill Algorithm – for curve generation and refinement
- De Casteljau’s Algorithm – for evaluating and subdividing Bezier curves
- Spline Interpolation – for ensuring smooth transitions between curve segments
- Curve Approximation and Control Points Estimation – for adapting the generated curves to the reference image
The project was developed in MATLAB, leveraging its strong capabilities for:
- Numerical computation
- Data visualization
- Geometric modeling
The system analyzes key points extracted from the reference image and computes Bezier and spline curves that best approximate its outlines.
The goal of this project is to explore how mathematical representations of curves can be used to:
- Reconstruct and stylize existing images
- Visualize geometric approximation techniques
- Highlight the relationship between mathematics and computer graphics
The final result is a generated drawing that closely follows the structure of the input image while maintaining smooth and continuous curves, showcasing the power of geometric computation.
- Open all the
.mfiles using MATLAB . - Make sure the reference image file
kakashi_bezier.jpgis in the same directory. - Run the
Drawing.morDrawing_with_control_points.m(drawing + control points) scripts to generate the curve-based reconstruction using Bezier and spline algorithms.