Computer Vision, Graphics, geometry in Julia.
See also
- graph for graph theory in mathematics
- audio-video for videos
- visualization for visualization libraries
Organizations
- Julia Geometry Organization
- Julia GL Organization
- Julia Graphics Organization
- Julia Images Organization
Image Formats
- AndorSIF.jl : This implements support for reading Andor SIF image files in the Julia programming language. Note: The Andor
.SIFformat changes with each version. - FITSIO.jl : Flexible Image Transport System (FITS) support for Julia.
- ImageIO.jl : Load images in Julia.
- ImageMagick.jl : Thin Wrapper for the library ImageMagick, for general-purpose image saving and loading.
- Images.jl : An image library for Julia.
- LibImageQuant.jl : Julia wrapper for libimagequant to shrink PNG files.
- Netpbm.jl : Julia support for Netpbm (
.ppm,.pgm,.pbm). - NRRD.jl : Julia support for the Nearly Raw Raster Data (
NRRD) image file format - OMETIFF.jl : I/O operations for OME-
TIFFfiles in Julia with a focus on correctness. - QuartzImageIO.jl : Thin wrapper around OSX’s native image format saving and loading.
- TiffImages.jl : Pure-Julia TIFF I/O.
Bindings for external libraries
- Cairo.jl : Bindings to the Cairo graphics library.
- DevIL.jl : DevIL / OpenIL binding for Julia.
- FreeType.jl : Font FreeType 2 bindings API wrapper. See also FreeTypeAbstraction.jl
- MeshCat.jl : Julia bindings to the MeshCat WebGL viewer.
- MiniFB.jl : A Julia wrapper around https://github.com/emoon/minifb , a small cross platform library that makes it easy to render 32 bit pixels in a window.
- ModernGL.jl : OpenGL 3+ bindings for Julia.
- OCReract.jl : A simple Julia wrapper for Tesseract OCR.
- OpenCV.jl : OpenCV in Julia. Introduction to Julia OpenCV Binding.
- Skia.jl : Support for the Skia library in Julia.
- Vulkan.jl : Wrapper of Vulkan, Khronos next generation OpenGL API.
- XCB.jl : XCB windowing library wrapper.
Computer Vision (CV)
- ActiveAppearanceModels.jl : Active Appearance Models.
- Bezier.jl : Julia functions for computing a Bezier curve.
- ColorBrewer.jl : A Julia library for generating color brewer color schemes.
- ConstructiveSolidGeometry.jl : A Constructive Solid Geometry (CSG) and ray tracing package for Julia.
- Contour.jl : Calculating contour curves for 2D scalar fields in Julia.
- Fontconfig.jl : provides basic binding to fontconfig.
- Luxor.jl : an easy-to-use sugary coating in Julia for the Cairo graphics package.
- Porta.jl : This project helps with Eric Weinstein’s the Graph-Wall-Tome (GWT) project.
Image Processing
- ImageClipboard.jl : Copy and Paste images with Julia.
- ImageFeatures.jl : Image feature detection for Julia.
- ImageProjectiveGeometry.jl : Projective geometry for computer vision in Julia.
- ImageQuilting.jl : Image quilting for texture synthesis in Julia .
- ImageSegmentation.j : Partitioning images into meaningful regions.
- ImageView.j : Interactive display of images and movies.
- MeshIO.jl : IO for Meshes.
- RegisterQD.jl : It performs image registration using the global optimization routine
QuadDIRECT.jl. Unlike many other registration packages, this is not “greedy” descent based on an initial guess---it attempts to find the globally-optimal alignment of your images. - SubpixelRegistration.jl : Efficient subpixel image registration algorithm implementation that allows you to register arrays of arbitrary dimensions (not just 2d). Functions are written for AbstractArrays and should work for Images.
- TestImages.j : Loading standard test images into Julia.
Vector Graphics
- Compose.jl : Compose is a vector graphics library for Julia. Gadfly.jl is built upon this package.
- ImageCore.jl : Julia types for representing images.
- Rsvg.jl : An adaptation of the librsvg to render SVG to Cairo surfaces.
- TikzGraphs.jl : Graph layout package using algorithms built into PGF/TikZ 3.0+.
- TikzPictures.jl : Library interface to PGF/TikZ, that allows one to create PGF/TikZ pictures and images can be saved as PDF, SVG, and TEX. If using IJulia, it will output SVG images.
Geometry
- Wikipedia: Geometry
- Wikipedia: Algebraic Geometry
- Wikipedia: Computational Geometry
- Wikipedia: Discrete Geometry
- Wikipedia: Solid Geometry
- CDDLib.jl : A wrapper for cdd, the library for polyhedra manipulation such as double description and Fourier-Motzkin elimination. This module can either be used in a lower level using the API of cdd or using the higher level interface of Polyhedra.jl.
- CliffordNumbers.jl : a simple, statically sized multivector (Clifford number) implementation for Julia. JuliaCon 2025
- ConvexHull.jl : A Julia library for polyhedral computations.
- CoordinateTransformations.jl : A fresh approach to coordinate transformations.
- Descartes.jl : A research project into the representation of solid geometry.
- Ganja.jl : Visualization for geometric algebra, not just algebra, using ganja.js
- GeometricalPredicates.jl : Fast, robust 2D and 3D geometrical predicates on generic point types. Implementation follows algorithms described in the Arepo paper and used (for e.g.) in the Illustris Simulation.
- GeometryOps. : a package for geometric calculations on (primarily 2D) geometries. JuliaCon 2024 video
- GeometryTypes.j : Geometry types and for Julia, based on FixedSizeArrays.
- Grassmann.jl : ⟨Leibniz-Grassmann-Clifford-Hestenes⟩ differential geometric algebra / multivector simplical complex.
- ImageFiltering.jl : ImageFiltering implements blurring, sharpening, gradient computation, and other linear filtering operations, as well nonlinear filters like min/max.
- ImageMorphology.j : This package provides morphology-related functionality to the
Images.jlproject. - LRSLib.jl : A wrapper for
lrs. - Meshes.jl : Generation and manipulation of triangular meshes for a type of polygon mesh in computer graphics.
- OctTrees.jl : Fast quad and oct-trees.
- Polyhedra.jl : It provides an unified interface for Polyhedra Manipulation Libraries such as
CDDLib.jl. - QHull.jl : A Julia wrapper around a PyCall wrapper around the qhull Convex Hull library.
- RayTraceEllipsoid.jl : Ray trace ellipsoid-shaped domes i.e. finds intersection points and refract/reflect according to the refractive indices.
- Rotations.j : Implementations for various 3D rotation parametrizations.
- SignedDistanceFields.j : Simple and efficient SDF calculation.
- TetGen.jl : TetGen wrapper.
- TriangleIntersect.jl : Fast ray-triangle intersections for ray tracing.
- VoronoiCells.jl : Manipulate Voronoi cells in 2D.
- VoronoiDelaunay.jl : Fast and robust Voronoi & Delaunay tessellation creation with Julia.
Misc
julia-logo-graphics : official versions of the Julia logo.
- FIGlet.jl : Fonts port of FIGlet, doing ASCII Art.