Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bridges for other imaging I/O systems #2

Open
fish2000 opened this issue Jan 22, 2015 · 3 comments
Open

Bridges for other imaging I/O systems #2

fish2000 opened this issue Jan 22, 2015 · 3 comments

Comments

@fish2000
Copy link
Contributor

E.g. CImg.h[0], mahotas-imread[1], ffmpeg[2], etc. Maybe even Apple ImageIO (or its Windows equivalent)?

I would personally be interested in making such contributions if there was any interest!

[0] http://cimg.sourceforge.net/download.shtml
[1] https://github.com/luispedro/imread – a python module, but with a C++ I/O backend
[2] https://www.ffmpeg.org

@fish2000 fish2000 changed the title Bridge for other imaging I/O systems Bridges for other imaging I/O systems Jan 22, 2015
@matt-42
Copy link
Owner

matt-42 commented Jan 23, 2015

Hello fish2000,

Thanks for the proposition. I do not need these bridge today but if you do, your contributions are welcome. I suggest that we follow this convention: The code specific to each bridge is fully contained by the file vpp/utils/frameworkname_bridge.hh

Note that you can use the optional arguments _data and _pitch to wrap an external buffer to a vpp image:
https://github.com/matt-42/vpp#_data-and-_pitch

@fish2000
Copy link
Contributor Author

Hello Matt – I would actually totally be into doing this! I very much appreciate the work you have done to make the C++11/14 functional idioms into something useful and legible.

I will work out support for CImg.h buffers and Python’s Py_buffer API; I am familiar with both. I can also add support for managed-parallel execution on Mac OS (via GCD, as an alternative to OpenMP).

I am actually having trouble getting set up, though: I have built and installed both dige and IOD after some minor patching on my part[0], but I am having trouble building vpp’s tests and examples. While attempting to build vpp, I replaced -std=c++14 to -std=c++1y and updated the eigen3 include path (which was hardcoded) but I couldn’t figure out how to address a number of template errors:

https://gist.github.com/fish2000/2070a697e05df2c5e0dc#file-02-make-log-L35-L47

… which I cannot tell if those errors are build-related or indicative of a bug.

Anyway yeah – if you get a moment and help me out with your software I will certainly return the favor and send you some PRs, yes! Thanks.

[0] – I used a personal Homebrew[1] tap repo (rather than a fork) as I don’t know CMake: https://github.com/fish2000/homebrew-praxa
[1] – Ruby-based open source package manager for Mac OS: https://github.com/Homebrew/homebrew

@matt-42
Copy link
Owner

matt-42 commented Feb 2, 2015

Make sure your Clang version suport c++14 http://clang.llvm.org/cxx_status.html
Here is your compiler version from your gist:

-- The CXX compiler identification is AppleClang 6.0.0.6000056

Do you know which version of Clang is it? this number does not match the Clang version numbers..
You need at least Clang 3.4 for full C++14 support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants