Category Archives: OpenSource

Video summary generation as open source

As mentioned in a previous post I’m working with colleagues on a video summary tool, which extracts still images from a video. The goal of the tool is to find frames, which describe the image in an optimal way. Now it’s in a (rather) stable state and ready to release. For Windows users it should be a single click to start the thing, for Linux you need to install ffmpeg. Note that the tool is open source & the code is GPL-ed :)

Links

Report from the Open Source Track @ ACM MM

Within the open source track of the ACM Multimedia conference the SIGMM  (Special Interest Group on Multimedia of the ACM) wants to provide a platform on discussing tools and code free to use in research as well as industry project. As I already blogged I had a presentation on Lire there. However all other contributors were nearly as interesting, if not even more ;)

Marco Lohse presented a Network-Integrated Multimedia Middleware (NMM), which was developed at Saarland University and is now available with dual licensing. He is also CEO of the company selling the non GPL license. The software is impressive and his demo was great. No surprise he won the prize of 700 $. (http://www.motama.com/nmm.html)

Yannick Alluse presented GpuCV, an extension of OpenCV towards CUDA and shader based computing. Important thing is that the library decides whether CPU, Shader or the GPU will be used for processing. (https://picoforge.int-evry.fr/cgi-bin/twiki/view/Gpucv/Web/)

Andreas Berger showed a framework for DVB-* transmission. It allows for inexpensive setup of for instance a DVB-T or DVB-H broadcasting service in labs or research projects. As its very generic one can compose the DVB stream fully free, so MHP, IP Data, EPG and so on are possible. (http://sourceforge.net/projects/fatcaps/)

Jose San Pedro Wandelmer from the University of Sheffield presented his project FOBS, which is actually a wrapper for ffmpeg for C++ and JMF. I already knew FOBS as I have used it several times, but meeting Jose and talking to him was great. (http://fobs.sourceforge.net/)

CBIR for Facebook: img(Finder)

img(Finder) Screenshot

Recently Savvas Chatzichristofis released a Facebook app based on his tool img(Rummager) to retrieve the photos of Facebook contacts based on image content. The tool – called img(Finder) – allows to connect to a Facebook account and creates an index based on the CEDD and FCTH image features. img(Finder) indexes the images of all Facebook friends. Querying the index is done by sketch (painting tool is included) or by sample image. Best of all: The tool is open source :)

Links

Lire: Submission to the ACM Multimedia Open Source Contest 2008

I recently submitted Lire and LireDemo to the ACM Multimedia Open Source Software Competition 2008. As I’d really like to go there I hope it will judged as relevant contribution and a demo at the ACM Multimedia is requested. Note that I’ve integrated a new feature in LireDemo for the ACM Multimedia submission: Now its easier to test Lire by just indexing random photos from Flickr. By just hitting the “Index” button without giving a directory of images the download will start automatically.

Links:

Lire development: a big next step ..

While it has been quiet for some time around Lire, recently development has been pushed forward. I switched to SVN for development and integrated simple RGB color histograms as a feature for comparison with the MPEG-7 features. Savvas Chatzichristofis (or on facebook, his image search engine) contributed the CEDD feature, which works great! Marko Keuschnig and Christian Penz contributed implementations for the Gabor texture feature and the Tamura texture features, where the latter is already in the SVN. I also integrated the new features in LireDemo. A new version – already compiled – can be downloaded here: liredemo-svn-2008-05-29-jdk16.tar.bz2 Note that Java 1.6 is required.

QT Jambi: Deployment and Web Start

I’m still having this strange idea to use QT Jambi one day for a Java project of mine :) Jambi is a pack of Java bindings for the QT framework. Therefore one can use the QT GUI classes from within Java and need not to rely on the Swing, AWT or SWT toolkit. As it maps to native code it is also expected to be faster than Swing or AWT. Like QT it can be used for GPL based open source development fro free.

While the demos look fine I had some doubts regarding the applicability for deployment. Jambi definitely relies on the QT libraries, which – not surprisingly – depend on the target platform. So different pre compiled libraries have to be included for different platforms. For the open source windows edition the whole pack has 26.4 MB (compressed < 6 MB), which is not more but a reasonable addition compared to the size of a standard JRE (compressed < 20 MB). A minimal set for using the GUI (core, gui and mingw) has about 17.3 MB.

So my conclusion: It’s definitely usable. While you cannot create QT applets with Java, web start is possible. However if in a specific scenario – especially web start – size matters then you need think about compression (e.g. with jars).

Related links:

The iBlue 747 GPS Logger

iblue747.jpgRecently I bought the iBlue 747 GPS Logger after reading the review on Cool Tools. While most GPS devices sold here are based on the SiRF star III chip, the 747 is based on the MTK chipset. This allows the user to fill the internal memory easily before you run out of power instead of the other way round. For more detailed information I found a extensive review on gpspassion.com.

From my point of view the device is good enough. Memory holds up to 70.ooo waypoints and there is enough power for a long hike, walk or bike tour. The software however is somewhat limited. I recommend to use the Java open source software BT747 for downloading the track logs and allows to convert them to Google Earth files, Google Map HTMLs (for sending by email), GPX or NMEA. This tool is rather complicated to use but works fine as soon as you managed to let it do what you want. One will also need the driver, but all instructions are given in the howto of the bt747 software.

BT747 ScreenshotWhat took some time for me to realize was that the internal memory of the iBlue 747 was 16 Mbit, which is 2 MByte. This was quite a shock (as I misread it first), but as already mentioned its enough for ~ 70k track points. The GPS mouse function comes handy when navigating with my mobile phone, which – just to mention – has the same battery type as the gps device :) One thing that disturbs me somewhat: I’d like to have a device where track logs can be downloaded using plain USB (like from a USB storage device) not serial over USB, which is awfully slow. Also I’d like to have GPS that works inside the house too :-D

Geo tagging of photos also works fine, there are several tools available. I’ve tested the GPS Log Analyzer and GeoSetter, which both work fine. The locr tool seems to produce GPS Exif metadata that can’t be read from Google Picasa. Flickr recognizes the geo tags also, but you have to activate the import of those in your privacy settings.

Moved ImageSeams to Google Code

With the v4 version I decided to put up a project at Google Code for the whole thing as I needed Subversion support and some way to handle the downloads. You’ll find all information on the project there.

Co-developers are of course welcome :)

Content Based Image Resizing (GPL, Java): Update to v4

I’ve just uploaded a maintenance release. Biggest change is that the seam table is now re-used. Therefore computation is somewhat faster. I’ve also cleaned out the code and made more ‘readable’. Fell free to download and comment:

Other tools (stand alone, plugins, etc.) are reviewed for instance here. Seems like there is a “war of seam carving tools” going on. Many of those are closed source, perhaps some people are trying to make money selling old shoes :-D The roadmap for this implementation is clear: If the following two constraints are met development is going on:

  • Someone (including me) needs some feature / performance upgrade or finds some bug
  • Someone (possibly me) finds some time to implement the feature / performance upgrade

Criticizing the OLPC (100$ Laptop Computer)

Following a link in Ramesh Jain’s blog I read the post “OLPC is the PC you can’t ever criticize” from George Ou. He discusses the inability to criticize the activities around the “One Laptop Per Child” initiative and points out why one cannot criticize it. He also points out why critics should be allowed :-D My recommendation: Read!