Coder Social home page Coder Social logo

harlo / jpeg-redaction-library Goto Github PK

View Code? Open in Web Editor NEW

This project forked from asenior/jpeg-redaction-library

0.0 1.0 0.0 16.59 MB

Library to parse and load EXIF (JPEG) image files and meta data, and redact the images for privacy.

License: GNU General Public License v3.0

Shell 0.87% Ruby 0.83% C 27.93% C++ 70.38%

jpeg-redaction-library's Introduction

JPEG Redaction Library

This is an open source C++ library that can parse EXIF format files- that is files in the standard EXIF format for representing JPEG-encoded data. The library can parse JPEG and EXIF contents and is intended to be used to rewrite the files in a modified form. The library has been developed for the guardianproject/SecureSmartCam project. The main distinguishing feature of the library is the ability to erase regions of an image (for privacy protection) in the compressed domain.

The basic library is now functionally complete, though with rough edges.

  • It can read & parse EXIF/JPEG files
  • Write JPEG files
  • Parse EXIF tags
  • Parse IPTC tags
  • Simple operations on EXIF tags
  • Redact (wipe) rectangular regions in JPEG images (and thumbnails).
  • Reverse image redactions.

In the future it is intended that the library will support the following:

  • Wider range of redaction operations. (Blur, pixellize, overlay....)
  • More extensive API around editing EXIF & IPTC data.
  • Extension to MPEG4 video.

Known problems:

  • Not extensively tested. (Range of test images, redaction region corner cases)
  • Doesn't preserve maker notes.
  • Redaction regions are stored as strips, so overlapping redaction rectangles cannot be independently encrypted.
  • Limited redaction methods (currently just grey rectangle, or horizontal strips of constant colour.

The main library is in /lib/. Unit tests and sample code can be found in /test/.

bin/redaction_main.cpp is a simple command-line program to redact an image.

Please let me know if you are interested in using the library, or if you have any feature requests.

jpeg-redaction-library's People

Contributors

asenior avatar

Watchers

Harlo Holmes/LvH avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.