Browse free open source Image Processing software and projects below. Use the toggles on the left to filter open source Image Processing software by OS, license, language, programming language, and project status.

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • Get Avast Free Antivirus with 24/7 AI-powered online scam detection Icon
    Get Avast Free Antivirus with 24/7 AI-powered online scam detection

    Get protection for today’s online threats. Free.

    Award-winning antivirus protection, as well as protection against online scams, dangerous Wi-Fi connections, hacked accounts, and ransomware. It includes Avast Assistant, your built-in AI partner, which gives you help with suspicious online messages, offers, and more.
    Free Download
  • 1
    Octave Forge

    Octave Forge

    A collection of packages providing extra functionality for GNU Octave

    Octave Forge is a central location for collaborative development of packages for GNU Octave. The Octave Forge packages expand Octave's core functionality by providing field specific features via Octave's package system. See https://octave.sourceforge.io/packages.php for a list of all available packages. GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems, and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable. Refer to https://www.octave.org for more information.
    Leader badge
    Downloads: 2,297 This Week
    Last Update:
    See Project
  • 2
    SciPy

    SciPy

    SciPy library main repository

    This is the main repository for the SciPy library, one of the core packages that make up the SciPy stack. SciPy is an open source software used in the fields of mathematics, science, and engineering, with modules for statistics, optimization, integration, linear algebra, signal and image processing, and many more. The SciPy library contains many of the user-friendly and efficient numerical routines, including those for numerical integration, interpolation, and optimization. SciPy is built to work with NumPy, a software that provides convenient and fast N-dimensional array manipulation. Both SciPy and NumPy run on all popular operating systems, are fast and easy to install, and are powerful yet easy to use. They’re currently depended upon by numerous leading scientists and engineers all over the world. Try them for yourself!
    Downloads: 89 This Week
    Last Update:
    See Project
  • 3
    ZXing

    ZXing

    Barcode scanning library for Java, Android

    ZXing or “Zebra Crossing” is an open source multi-format 1D/2D barcode image processing library that’s been implemented in Java, and also comes with ports to other languages. It currently supports the following formats: UPC-A and UPC-E EAN-8 and EAN-13 Code 39 Code 93 Code 128 ITF Codabar RSS-14 (all variants) RSS Expanded (most variants) QR Code Data Matrix Aztec ('beta' quality) PDF 417 ('alpha' quality) MaxiCode ZXing is made up of several modules, including a core image decoding library, JavaSE-specific client code, and Android client Barcode Scanner. It is the basis of many other third-party open source projects.
    Downloads: 67 This Week
    Last Update:
    See Project
  • 4
    Pillow

    Pillow

    The friendly Python Imaging Library fork

    If you've ever wondered or worried about the future of Python's Imaging Library, it's time to stop. Pillow is here to answer your concerns, and offer you more. Pillow is the friendly fork of the Python Imaging Library or PIL, a library that adds image processing capabilities to your Python interpreter. Why turn to Pillow? Aside from offering extensive file format support, an efficient internal representation, and fairly powerful image processing capabilities, Pillow is setuptools compatible. While PIL is not officially over yet, with Pillow you can be assured of continuous integration testing, publicized development activity, and regular releases to the Python Package Index.
    Downloads: 57 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5

    Emgu CV

    Emgu CV is a cross platform .Net wrapper for OpenCV

    Emgu CV is a cross platform .Net wrapper to the OpenCV image processing library. Allowing OpenCV functions to be called from .NET compatible languages such as C#, VB, VC++, IronPython etc. The wrapper can be compiled in Mono and run on Windows, Linux, Mac OS X, iPhone, iPad and Android devices.
    Leader badge
    Downloads: 253 This Week
    Last Update:
    See Project
  • 6
    ImageMagick

    ImageMagick

    ImageMagick 7

    ImageMagick® is a free, open-source software suite, used for editing and manipulating digital images. It can be used to create, edit, compose, or convert bitmap images, and supports a wide range of file formats, including JPEG, PNG, GIF, TIFF, and PDF. ImageMagick is widely used in industries such as web development, graphic design, and video editing, as well as in scientific research, medical imaging, and astronomy. Its versatile and customizable nature, along with its robust image processing capabilities, make it a popular choice for a wide range of image-related tasks. ImageMagick includes a command-line interface for executing complex image processing tasks, as well as APIs for integrating its features into software applications. It is written in C and can be used on a variety of operating systems, including Linux, Windows, and macOS.
    Downloads: 17 This Week
    Last Update:
    See Project
  • 7
    C3D is a command-line tool for converting 3D images between common file formats. The tool also includes a growing list of commands for image manipulation, such as thresholding and resampling.
    Leader badge
    Downloads: 94 This Week
    Last Update:
    See Project
  • 8
    Point Cloud Library

    Point Cloud Library

    A standalone, large scale, open project for 2D/3D image processing

    The Point Cloud Library (PCL) is a standalone, large scale, open project for 2D/3D image and point cloud processing. PCL is released under the terms of the BSD license, and thus free for commercial and research use. Whether you’ve just discovered PCL or you’re a long time veteran, this page contains links to a set of resources that will help consolidate your knowledge on PCL and 3D processing. An additional Wiki resource for developers is available too. To simplify both usage and development, we split PCL into a series of modular libraries. PCL is cross-platform, and has been successfully compiled and deployed on Linux, MacOS, Windows, and Android. To simplify development, PCL is split into a series of smaller code libraries, that can be compiled separately. This modularity is important for distributing PCL on platforms with reduced computational or size constraints.
    Downloads: 15 This Week
    Last Update:
    See Project
  • 9
    Kingfisher

    Kingfisher

    Lightweight, pure-Swift library for downloading images from the web

    Kingfisher is a powerful, pure-Swift library for downloading and caching images from the web. It provides you a chance to use a pure-Swift way to work with remote images in your next app. Asynchronous image downloading and caching. Loading image from either URLSession-based networking or local provided data. Useful image processors and filters provided. Multiple-layer hybrid cache for both memory and disk. Fine control on cache behavior. Customizable expiration date and size limit. Cancelable downloading and auto-reusing previous downloaded content to improve performance. Independent components. Use the downloader, caching system, and image processors separately as you need. Prefetching images and showing them from the cache to boost your app. View extensions for UIImageView, NSImageView, NSButton and UIButton to directly set an image from a URL. Built-in transition animation when setting images. Customizable placeholder and indicator while loading images.
    Downloads: 11 This Week
    Last Update:
    See Project
  • Picsart Enterprise Background Removal API for Stunning eCommerce Visuals Icon
    Picsart Enterprise Background Removal API for Stunning eCommerce Visuals

    Instantly remove the background from your images in just one click.

    With our Remove Background API tool, you can access the transformative capabilities of automation , which will allow you to turn any photo asset into compelling product imagery. With elevated visuals quality on your digital platforms, you can captivate your audience, and therefore achieve higher engagement and sales.
    Learn More
  • 10
    MMDeploy

    MMDeploy

    OpenMMLab Model Deployment Framework

    MMDeploy is an open-source deep learning model deployment toolset. It is a part of the OpenMMLab project. Models can be exported and run in several backends, and more will be compatible. All kinds of modules in the SDK can be extended, such as Transform for image processing, Net for Neural Network inference, Module for postprocessing and so on. Install and build your target backend. ONNX Runtime is a cross-platform inference and training accelerator compatible with many popular ML/DNN frameworks. Please read getting_started for the basic usage of MMDeploy.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 11
    Accord.NET Framework

    Accord.NET Framework

    Machine learning, computer vision, statistics and computing for .NET

    The Accord.NET Framework is a .NET machine learning framework combined with audio and image processing libraries completely written in C#. It is a complete framework for building production-grade computer vision, computer audition, signal processing and statistics applications even for commercial use. A comprehensive set of sample applications provide a fast start to get up and running quickly, and extensive documentation and a wiki help fill in the details. The Accord.NET project provides machine learning, statistics, artificial intelligence, computer vision and image processing methods to .NET. It can be used on Microsoft Windows, Xamarin, Unity3D, Windows Store applications, Linux or mobile. After merging with the AForge.NET project, the framework now offers a unified API for learning/training machine learning models that is both easy to use and extensible.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 12
    libvips

    libvips

    A fast image processing library with low memory needs

    libvips is a demand-driven, horizontally threaded image processing library. Compared to similar libraries, libvips runs quickly and uses little memory. libvips is licensed under the LGPL 2.1+. It has around 300 operations covering arithmetic, histograms, convolution, morphological operations, frequency filtering, colour, resampling, statistics and others. It supports a large range of numeric types, from 8-bit int to 128-bit complex. Images can have any number of bands. It supports a good range of image formats, including JPEG, JPEG2000, JPEG-XL, TIFF, PNG, WebP, HEIC, AVIF, FITS, Matlab, OpenEXR, PDF, SVG, HDR, PPM / PGM / PFM, CSV, GIF, Analyze, NIfTI, DeepZoom, and OpenSlide. It can also load images via ImageMagick or GraphicsMagick, letting it work with formats like DICOM. It comes with bindings for C, C++, and the command-line. Full bindings are available for Ruby, Python, PHP, C# / .NET, Go, and Lua.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 13
    ArrayFire

    ArrayFire

    ArrayFire, a general purpose GPU library

    ArrayFire is a general-purpose tensor library that simplifies the process of software development for the parallel architectures found in CPUs, GPUs, and other hardware acceleration devices. The library serves users in every technical computing market. Data structures in ArrayFire are smartly managed to avoid costly memory transfers and to take advantage of each performance feature provided by the underlying hardware. The community of ArrayFire developers invites you to build with us if you're interested and able to write top performing tensor functions. Together we can fulfill The ArrayFire Mission under an excellent Code of Conduct that promotes a respectful and friendly building experience. Rigorous benchmarks and tests ensuring top performance and numerical accuracy. Cross-platform compatibility with support for CUDA, OpenCL, and native CPU on Windows, Mac, and Linux. Built-in visualization functions through Forge.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 14
    sharp

    sharp

    High performance Node.js image processing module

    The typical use case for this high speed Node.js module is to convert large images in common formats to smaller, web-friendly JPEG, PNG, AVIF and WebP images of varying dimensions. Resizing an image is typically 4x-5x faster than using the quickest ImageMagick and GraphicsMagick settings due to its use of libvips. Colour spaces, embedded ICC profiles and alpha transparency channels are all handled correctly. Lanczos resampling ensures quality is not sacrificed for speed. As well as image resizing, operations such as rotation, extraction, compositing and gamma correction are available. Most modern macOS, Windows and Linux systems running Node.js v10+ do not require any additional install or runtime dependencies. This module supports reading JPEG, PNG, WebP, AVIF, TIFF, GIF and SVG images. Output images can be in JPEG, PNG, WebP, AVIF and TIFF formats as well as uncompressed raw pixel data. Streams, Buffer objects and the filesystem can be used for input and output.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 15
    bild

    bild

    Image processing algorithms in pure Go

    A collection of parallel image processing algorithms in pure Go. The aim of this project is simplicity in use and development over absolute high performance, but most algorithms are designed to be efficient and make use of parallelism when available. It uses packages from the standard library whenever possible to reduce dependency use and development abstractions. All operations return image types from the standard library. Package convolution provides the functionality to create and apply a kernel to an image. Package effect provides the functionality to manipulate images to achieve various looks. Package histogram provides basic histogram types and functions to analyze RGBA images. Package paint provides functions to edit a group of pixels on an image. Package parallel provides helper functions for the dispatching of parallel jobs.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 16
    Jimp

    Jimp

    An image processing library written entirely in JavaScript for Node

    An image processing library for Node written entirely in JavaScript, with zero native dependencies. If you're using this library with TypeScript the method of importing slightly differs from JavaScript. Instead of using require, you must import it with ES6 default import scheme. If you're using a web bundles (webpack, rollup, parcel) you can benefit from using the module build of jimp. Using the module build will allow your bundler to understand your code better and exclude things you aren't using. If you're using webpack you can set process.browser to true and your build of jimp will exclude certain parts, making it load faster. The static Jimp.read method takes the path to a file, URL, dimensions, a Jimp instance or a buffer and returns a Promise. In some cases, you need to pass additional parameters with an image's URL.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 17
    Kornia

    Kornia

    Open Source Differentiable Computer Vision Library

    Kornia is a differentiable computer vision library for PyTorch. It consists of a set of routines and differentiable modules to solve generic computer vision problems. At its core, the package uses PyTorch as its main backend both for efficiency and to take advantage of the reverse-mode auto-differentiation to define and compute the gradient of complex functions. Inspired by existing packages, this library is composed by a subset of packages containing operators that can be inserted within neural networks to train models to perform image transformations, epipolar geometry, depth estimation, and low-level image processing such as filtering and edge detection that operate directly on tensors. With Kornia we fill the gap between classical and deep computer vision that implements standard and advanced vision algorithms for AI. Our libraries and initiatives are always according to the community needs.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 18
    Mozilla JPEG Encoder Project

    Mozilla JPEG Encoder Project

    Improved JPEG encoder

    MozJPEG improves JPEG compression efficiency achieving higher visual quality and smaller file sizes at the same time. It is compatible with the JPEG standard, and the vast majority of the world's deployed JPEG decoders. MozJPEG is compatible with the libjpeg API and ABI. It is intended to be a drop-in replacement for libjpeg. MozJPEG is a strict superset of libjpeg-turbo's functionality. All MozJPEG's improvements can be disabled at run time, and in that case it behaves exactly like libjpeg-turbo. MozJPEG is meant to be used as a library in graphics programs and image processing tools. We include a demo cjpeg command-line tool, but it's not intended for serious use. We encourage authors of graphics programs to use libjpeg's C API and link with MozJPEG library instead. Progressive encoding with "jpegrescan" optimization. It can be applied to any JPEG file (with jpegtran) to losslessly reduce file size.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 19
    satellite-image-deep-learning

    satellite-image-deep-learning

    Resources for deep learning with satellite & aerial imagery

    This page lists resources for performing deep learning on satellite imagery. To a lesser extent classical Machine learning (e.g. random forests) are also discussed, as are classical image processing techniques. Note there is a huge volume of academic literature published on these topics, and this repository does not seek to index them all but rather list approachable resources with published code that will benefit both the research and developer communities. If you find this work useful please give it a star and consider sponsoring it. You can also follow me on Twitter and LinkedIn where I aim to post frequent updates on my new discoveries, and I have created a dedicated group on LinkedIn. I have also started a blog here and have published a post on the history of this repository called Dissecting the satellite-image-deep-learning repo.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 20
    ImageProcessor

    ImageProcessor

    Wrapper around System.Drawing for the processing of image files

    A .NET library for on-the-fly processing of images. ImageProcessor is a collection of lightweight libraries written in C# that allows you to manipulate images on-the-fly using .NET 4.5+. It consists of two main libraries ImageProcessor, for desktop and application use and ImageProcessor.Web, a dynamic image processing extension built for ASP.NET. It’s lighting fast, extensible, easy to use, comes bundled with some great features and is fully open source. ImageProcessor is free and open source but developing it has taken thousands of hours of my time and a large part of my sanity. If you feel like dropping me a few precious pounds (there’s no obligation) it would go a great way to ensure that I can afford to take the time to continue to improve the library. It's fast, extensible, easy to use, comes bundled with some great features and is fully open source.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 21
    tracking.js

    tracking.js

    A modern approach for Computer Vision on the web

    The tracking.js library brings different computer vision algorithms and techniques into the browser environment. By using modern HTML5 specifications, we enable you to do real-time color tracking, face detection and much more, all that with a lightweight core (~7 KB) and intuitive interface. To get started, download the project. This project includes all of the tracking.js examples, source code dependencies you'll need to get started. Unzip the project somewhere on your local drive. The package includes an initial version of the project you'll be working with. While you're working, you'll need a basic HTTP server to serve your pages. Test out the web server by loading the finished version of the project. The main goal of tracking.js is to provide those complex techniques in a simple and intuitive way on the web. We believe computer vision is important to improve people's life, bringing it to the web will make this future a reality a lot faster.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 22
    Simd

    Simd

    High performance image processing library in C++

    The Simd Library is a free open source image processing library, designed for C and C++ programmers. It provides many useful high performance algorithms for image processing such as: pixel format conversion, image scaling and filtration, extraction of statistic information from images, motion detection, object detection (HAAR and LBP classifier cascades) and classification, neural network. The algorithms are optimized with using of different SIMD CPU extensions. In particular the library supports following CPU extensions: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX-512 for x86/x64, VMX(Altivec) and VSX(Power7) for PowerPC, NEON for ARM. The Simd Library has C API and also contains useful C++ classes and functions to facilitate access to C API. The library supports dynamic and static linking, 32-bit and 64-bit Windows, Android and Linux, MSVS, G++ and Clang compilers, MSVS project and CMake build systems.
    Leader badge
    Downloads: 21 This Week
    Last Update:
    See Project
  • 23
    GPUImage 2

    GPUImage 2

    Framework for GPU-accelerated video and image processing

    GPUImage 2 is the second generation of the GPUImage framework, an open source project for performing GPU-accelerated image and video processing on Mac, iOS, and now Linux. The original GPUImage framework was written in Objective-C and targeted Mac and iOS, but this latest version is written entirely in Swift and can also target Linux and future platforms that support Swift code. The objective of the framework is to make it as easy as possible to set up and perform realtime video processing or machine vision against image or video sources. By relying on the GPU to run these operations, performance improvements of 100X or more over CPU-bound code can be realized. This is particularly noticeable in mobile or embedded devices. On an iPhone 4S, this framework can easily process 1080p video at over 60 FPS. On a Raspberry Pi 3, it can perform Sobel edge detection on live 720p video at over 20 FPS.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    PRMLT

    PRMLT

    Matlab code of machine learning algorithms in book PRML

    This Matlab package implements machine learning algorithms described in the great textbook: Pattern Recognition and Machine Learning by C. Bishop (PRML). It is written purely in Matlab language. It is self-contained. There is no external dependency. This package requires Matlab R2016b or latter, since it utilizes a new Matlab syntax called Implicit expansion (a.k.a. broadcasting). It also requires Statistics Toolbox (for some simple random number generator) and Image Processing Toolbox (for reading image data). The code is extremely compact. Minimizing code length is a major goal. As a result, the core of the algorithms can be easily spotted. Many tricks for speeding up Matlab code are applied (e.g. vectorization, matrix factorization, etc.). Usually, functions in this package are orders faster than Matlab builtin ones (e.g. kmeans). Many tricks for numerical stability are applied, such as computing probability in logrithm domain, square root matrix update to enforce matrix symmetry.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    ImageJ is a public domain Java image processing program inspired by NIH Image for the Macintosh. It runs, either as an online applet or as a downloadable application, on any computer with a Java 1.1 or later. HOME @ http://rsb.info.nih.gov/ij/
    Leader badge
    Downloads: 7 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.