GithubHelp home page GithubHelp logo

willmanyoung / opencl-jpeg Goto Github PK

View Code? Open in Web Editor NEW

This project forked from anknown/opencl-jpeg

0.0 2.0 0.0 1.19 MB

Implement of JPEG codec with OpenCL fork from IJG libjpeg

License: MIT License

Makefile 1.52% C 34.02% Roff 47.72% Shell 14.95% C++ 1.51% M4 0.28%

opencl-jpeg's Introduction

OpenCL-JPEG(Beta)

Intro

Implement of JPEG codec with OpenCL fork from IJG libjpeg (v8)

  • Decode/Encode JPEG Image
  • Resize JPEG Image
  • Do not support libjpeg(v8) smart scale, because I do not understand the code :D
  • Do not support other transform now, such as rotate, crop, etc :D

I recommend to use this lib with resize feature, because data transform between CPU and GPU is very expensive.

Install

  • CPU Version

    ./configure && make && make install

then you can find cjpeg djpeg jpegtran rdjpgcom wrjpgcom in the source directory

  • GPU Version

    • OSX

      ./configure --enable-opencl --enable-shared=no && make && make install

    then you can find jpegresize in the source directory. It will be some mistakes when compile shared library, so you need to disable shared library

    • Linux

      ./configure --enable-opencl --with-openclincludedir=xxx --with-opencllibdir=xxx

    because I do not have an Linux Computer supported OpenCL, so I do not test this branch, if you find any problem please let me know

Usage

./jpegresize -w 500 -h 300 -q 80 -outfile han.jpg testimg.jpg

The command will resize testimg.jpg to 500x300 image use your GPU device.

TODO

  • Code & Performance
  • Benchmark
  • Http Server

LICENSE

MIT License

opencl-jpeg's People

Contributors

anknown avatar

Watchers

 avatar  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.