Opencv MPEG7 descriptors - c++

I am working on the system that compares images. MPEG-7 standard provides some descriptors which can be used for that e.g: Dominant Color, Color Layout, Edge Histogramm, Color Coherence Vectors.
Do you know where i can get a source code for some of these methods?
Thx!

You can also use the Windows and Linux executables, or easy-to-use API based on OpenCV library, developed for BilVideo-7 video indexing and retrieval system: http://www.cs.bilkent.edu.tr/~bilmdg/bilvideo-7/Software.html.

The ISO distributes reference software as part of the MPEG-7 standard, and among other things it includes feature extraction code for the visual descriptors. The zip file contains another zip file called XMWin.zip, which contains the source. (Despite the "Win" name, it contains instructions for compiling on both windows and unix.)

Hope this helps to other programmers:
Here you can find one implementation on C#
Here another implementation in Java.

For Future readers, there's a CPP library that claims to be easy to use here.
https://github.com/mubastan/mpeg7fex
This has been tested on OpenCV 3, so this is at par the latest.

Related

Exporting 3D Images from C++ to Matlab .fig files

I have a visual analytics program that handles the visualization of 3D datasets (e.g., MRI datasets). For multiple reasons, I want to be able to watch the result (3D-grid image visualizable using ray tracking techniques, e.g., the ray-marching algorithm) in Matlab. I see that Matlab relies on .fig files, but I do not find any documentation of its structure.
Does people know where .fig files are documented? Is there any C++ library that proposes such a functionality? My C++ code runs on a linux workstation and I do not own any Matlab license: the generated files are not meant to me but to others owning such a license.
Thanks!

What library should I use to get the data from a photo of a QR Code?

Similar: Does anyone know of a C/C++ Unix QR-Code library?
I tried libqrencode but apparently it's only able to generate a QR-Code. However, I need a library that reads the data from a photo of a printed QR-Code.
It must be a C, C++ or Objective-C library and it has to compile on BSD systems. On my platform, Java and .NET are not available.
What libraries can I use?
Thanks.
Try using libdecodeqr , it doesn't seem to be updated for over a year but a Google search reveals that it still works.
zxing (http://code.google.com/p/zxing/) is probably the most well-known and used in a number of barcode/qr-code apps. The original/primary code is Java but it includes a C++ port that is pretty actively maintained, particularly for QR codes.
The C++ library does not (currently) have an encoder, but it sounds like you want a decoder.

How to convert UTM Coordinate in C to Latitude/Longitude using WGS84 Datum?

Does anyone know where I can find open source code (in c++) that converts a UTM point to Geo (WGS 84)?
Thanks,
Liran
Take a look at GDAL.
Specifically the code used here.
There is also a Warp API tutorial here which outlines the basic use of the Warp API.
Alternatively, you can use the more lightweight PROJ.4 library (GDAL uses this internally).
While not C++ per se, I have written it in Objective-C and could more or less be copied and pasted into C or C++ with a few minor alterations.
UTMConverter example for iOS
The part you want is a file called UTMConverter.m. It has methods for converting from lat/long to UTM and vice-versa.

Saving image as JPG -library?

I'd like to find a JPEG-writing library that can be statically linked (so there are no DLL dependencies). No JPEG-reading ability is required.
Edit: I got LibGD working, but it had one problem described here:
LibGD library is not working: crash when saving image
libjpeg is the most popular library for saving jpegs, but it can be a bit of a pain to use.
Edit, here is a simple example of how to use it. Look for the function juce_writeJPEGImageToStream.
Have you looked at LibGD? I can't seem to find the license, but neither did you specify a requirement.
If you're running your application on Windows then you should use the standard, built-in "GDI+" library that Microsoft provides. Every computer running XP or later has this library.
GDI+ is intended to supersede GDI, which is what you're probably already using whether you know it or not, but it can co-exist with GDI calls provided you flush the buffers when switching between the two. See:
http://www.cpjj.net/Miscellaneous/CreateJPEGFromDC.htm
(Hans Passant - you should have written your comment as an answer).

C++ libraries to manipulate images

Do you know any open source/free software C++ libraries to manipulate images in these formats:
.jpg .gif .png .bmp ? The more formats it supports, the better. I am implementing a free program in C++ which hides a text file into one or more images, using steganography.
I am working under Unix.
ImageMagick can manipulate about anything and has interfaces for a dozen of languages, including the Magick++ API for C++.
#lurks: I assume that you are looking for LSB shifting? I did some stego work a couple of years ago, and that's how it appeared most apps worked. It appears that ImageMagick (suggested by others) allows you to identify and manipulate the LSBs.
It takes some setting up, but I'm a fan of Adobe's GIL (now part of Boost).
Have you considered GDI?
-- Kevin Fairchild
FreeImage is pretty solid. It has a C interface but is more C++-like in its implementation.
For .png images you could look into Cairo (and CairoMM). There's also Anti-Grain which people consider very fast.
I like vxl
VXL (the Vision-something-Libraries) is a collection of C++ libraries designed for computer vision research and implementation. It was created from TargetJr and the IUE with the aim of making a light, fast and consistent system. VXL is written in ANSI/ISO C++ and is designed to be portable over many platforms.