Computer Vision, Graphics, geometry in Julia.

See also

Organizations

Image Formats

  • AndorSIF.jl : This implements support for reading Andor SIF image files in the Julia programming language. Note: The Andor .SIF format 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-TIFF files 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

Computer Vision (CV)

Wikipedia: Computer Vision

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

Wikipedia: 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


  • 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.jl project.
  • 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.