Skip to content

berkbavas/DiffusionCurveRenderer

Repository files navigation

Diffusion Curve Renderer

C++ project for reconstructing images using Bézier curves and color diffusion constrained by those curves.

Inspired by the work of Orzan et al.. Vectorization algorithms are adapted from this repository.

Features

  • Image reconstruction with Bézier curves
  • Color diffusion along vectorized curves
  • Vectorization algorithms for curve extraction
  • Modern GUI with ImGui and Qt
  • Uses OpenGL for rendering

Dependencies

All dependencies are included in the Libs folder:

  • ImGui: For the graphical user interface
  • OpenCV: For edge detection (built with MSVC 2019 64-bit)
  • Eigen: For vectorization and linear algebra

Build Instructions

  1. Install CMake 3.25.1 or newer.
  2. Install Visual Studio 2022 with the MSVC C++ v143 Compiler.
  3. Install Qt 6.7.3 MSVC2022 64bit.
  4. Set the environment variable Qt6_DIR to C:\Qt\6.7.3\msvc2022_64.
  5. Clone the repository: cmd git clone https://github.com/berkbavas/DiffusionCurveRenderer.git
  6. Create and enter the build directory: cmd mkdir Build cd Build
  7. Run CMake: cmd cmake ..
  8. Open DiffusionCurveRenderer.sln in Visual Studio 2022.
  9. Build and run the project.

Demo Videos

Vectorization.mp4
CurveEditingMode.mp4

License

This project is licensed under the MIT License.

About

Reconstructing images using Bézier curves and diffusing colors constrained by those curves

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages