Skip to main content

This library implements the PatchMatch based inpainting algorithm.

Project description

PatchMatch based Inpainting

License: MIT PyPI Downloads Code style: black

This library implements the PatchMatch based inpainting algorithm. It provides both C++ and Python interfaces. This implementation is heavily based on the implementation by Younesse ANDAM: younesse-cv/PatchMatch, with some bug fixes, and updates.

Usage

You need to first install OpenCV to compile the C++ libraries. Then, run make to compile the shared library libpatchmatch.so.

For Python users (example available at examples/py_example.py)

import patch_match

if patch_match.patchmatch_available:
    image = ...  # either a numpy ndarray or a PIL Image object.
    mask = ...   # either a numpy ndarray or a PIL Image object.
    result = patch_match.inpaint(image, mask, patch_size=3)

For C++ users (examples available at examples/cpp_example.cpp)

#include "inpaint.h"

int main() {
    cv::Mat image = ...
    cv::Mat mask = ...

    cv::Mat result = Inpainting(image, mask, 5).run();

    return 0;
}

README and COPYRIGHT by Younesse ANDAM

@Author: Younesse ANDAM

@Contact: younesse.andam@gmail.com

Description:

This project is a personal implementation of an algorithm called PATCHMATCH that restores missing areas in an image. The algorithm is presented in the following paper PatchMatch A Randomized Correspondence Algorithm for Structural Image Editing by C.Barnes, E.Shechtman, A.Finkelstein and Dan B.Goldman ACM Transactions on Graphics (Proc. SIGGRAPH), vol.28, aug-2009

For more information please refer to http://www.cs.princeton.edu/gfx/pubs/Barnes_2009_PAR/index.php

Copyright (c) 2010-2011

Requirements

To run the project you need to install Opencv library and link it to your project. Opencv can be download it here http://opencv.org/downloads.html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyPatchMatch-1.0.2.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

PyPatchMatch-1.0.2-py3-none-any.whl (20.3 kB view details)

Uploaded Python 3

File details

Details for the file PyPatchMatch-1.0.2.tar.gz.

File metadata

  • Download URL: PyPatchMatch-1.0.2.tar.gz
  • Upload date:
  • Size: 16.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for PyPatchMatch-1.0.2.tar.gz
Algorithm Hash digest
SHA256 7e01e332cdffa082a0c0fd752eb7644167e8f4e5297b464f501418eae7079b41
MD5 b89baa233840c27e9faa61ad3d868ec7
BLAKE2b-256 897f4403ceb49442988ec7aeb0d5fa372ea4a150967bb50fd64ecc7280d72d15

See more details on using hashes here.

File details

Details for the file PyPatchMatch-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: PyPatchMatch-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 20.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for PyPatchMatch-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d749b411c5376086bbf2ca7a3638553c745c8e4318d7531e8e065106335cba9c
MD5 990243b21a42f457d87cdddfea5e3256
BLAKE2b-256 1485403c3491d3820f85772c44cb411b16a249065f136fd85115fe3830acb620

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page