Avoiding location specific commercials when listening to internet radio

I like listening to internet radio because the genre specific mix and the few commercials. Throughout the US you’ll find a great variety of stations and some are even listed in the “Icecast Radio Directory”, which can easily be accessed through the VLC media player.

However, if you’re tuning into eg. US internet radio station from outside the country, like me, you may encounter a nasty little flaw. When I am tuning in from Germany into US stations, the commercials are no longer in English. They are German commercials, mixed into the US radio stream. This is really annoying. For me there are two reasons for listening to radio stations from other countries: 1. a better genre specific mix and 2. avoiding German commercials. I thought that point two was no longer satisfiable. I thought, what if, I had an IP address from a proxy server outside of Germany and can I reach that proxy with VLC? Yes, that’s possible and it’s pretty easy also. Here is how you can do it:

Open the VLC preferences with STRG + P and go to “Input / Codecs”. At the bottom of that tab enter a proxy IP into “HTTP Proxy URL”. If the port is different from 80 you can append it after the IP like this “IP:PORT”


If the proxy uses HTTP select the default at “Live555 stream transport” or if its connection is encrypted via HTTPS select “RTP over RTSP”. And here is a list of free proxy servers from around the world.

Have fun!

Time to clean the image sensor, isn’t it?

I have my new Nikon DSLR for some time now. You would expect that the camera is clean when comes out of the factory, but there are many people having this problem with new Nikon cameras. Some write about oil drops or dust on their camera sensors. Apparently the oil from the mirror lifting mechanism can be spilled onto the sensor when the camera is rather new. Oil drops are visible on the picture as small bright spots with a dark ring. How is dust going to appear on the picture? I’ll show you. There are several spots visible on the image below. The problem with these spots is, that you won’t see them if you don’t look for them! That’s why I didn’t see them earlier.

Image with dust spots.
Image with dust spots.

Now I’ve highlighted the dark spots where you can see that there is dust on the sensor. Some of them are clearly visible, some are rather hard to find. That’s the reason that you really have to look for them in order to see them.

Highlighted dust spot on the image.
Highlighted dust spots on the image.

With the help of GIMP’s healing tool the spots can be removed pretty easily and quickly.

Dust spots removed from the image with GIMP's healing tool.
Dust spots removed from the image with GIMP’s healing tool.

So how can you get rid of these spots once and for all? Clean the image sensor with a dust blower. For that you have to go into cleaning mode, then the mirror raises and you are able to clean the image sensor.

Never touch the sensor or the mirror with your finger or a brush! This will scratch the sensitive surfaces! If you see oil spots on the image, go to a service point and let them clean your sensor professionally.

Removing lens flares from photographs

There is a easy trick on how to get rid of lens flares in photographs. These flares occur when light rays are refracted at small angles and inhomogeneities in the glass lead to internal reflection or scattering. On an image with lens flares you see colorful dots and I want to show you how to remove these with Gimp.

In this example I have taken two pictures of the same object, looking directly in the sun. Both photographs were taken with the same exposure settings. On the first picture there are lens flares on the right side. The second picture has no lens flares because i covered the sun with my finger. Have a look at these two pictures.

Photograph with the lens flare
Photograph without the lens flare
Photograph without the lens flare

Now with these two photographs we go into Gimp and open up the second image where the sun is covered and open the first one as layer. We need to work with these layers in order to remove the lens flare. There should be two layers now, the image where the sun is covered is under the flare picture. Add a layer mask to the first image (the one on top with the flare).

Adding a layer mask to the picture with the flare

Make sure the mask is currently selected (there needs to be a white border around it) and take a brush with a size of maybe 80 and paint the area of the flare black. The areas where the mask is black will be fully transparent and than the image under the current layer (without the flare) is visible. When finished with the image, export it or save it as … and it should something like this example below.

Final photograph exported from Gimp with the sun fully visible but without any lens flares

Dresden dans le noir



Frauenkirche, B&W
Denn ewiglich wird er nicht wanken der Nachruhm des Gerechten bleibt ewig.
Im Innenhof des Zwingers
Im Innenhof des Zwingers
Im Innenhof des Zwingers
Im Innenhof des Zwingers
Elbeufer in Richtung Altstadt mit der Semperoper auf der linken Seite
Altstadt auf der anderen Elbseite

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Photography workflow on Linux

Recently I acquired a Nikon D7100 DSLR. With this nice camera I was able to shoot in RAW (uncompressed and unprocessed photo file format) and I needed a good editing tool for those files. Since these files come unprocessed from the camera’s sensor, I need to do the photo editing like setting the contrast, color tones, sharpness etc. on my computer. As you might guess there aren’t many programs for photo editing on Linux on the market. Some of them are open source and some proprietary. However the choice is very limited.

For my photography workflow I need programs for things like

  • organizing & minimal editing (eg. resizing)
  • editing RAW’s
  • creating HDR’s (high dynamic range)

Organizing & minimal editing

An open source tool for organizing photos is KDE’s digiKam. I can create albums for sets of photos, rate them and do some editing, resizing as well. I can look at pictures taken at different locations (GPS map) or dates (calendar) and the program sorts them accordingly. digiKam not only lets me view JPG but also RAW files and with this program I can easily download the pictures from my camera.

KDE’s photo editing software “digiKam”

Editing RAW’s

For RAW editing I currently use two. One is the proprietary program “Corel AfterShot Pro 2” and the second one is the open source alternative “RawTherapee”. Both have many features for editing RAW and I get really great pictures with both of them. Also a rating and sorting / tagging feature can be found in both.

“Corel AfterShot Pro 2” may have some better sorting mechanisms and algorithms for editing sharpness of the photo. However someone can also create awesome shots with “RawTherapee”. I for example find the queue manager better in the open source program. However I like them both and since “Corel AfterShot Pro 2” is also available on Linux for around 50€ I can and will use them both. Another thing is that a HDR editing feature will come out soon. This gives me a program for sorting, editing and creating HDR’s all in one.

Corel AfterShot Pro 2. Property of Corel.
Corel AfterShot Pro 2. Property of Corel.

Creating HDR’s

A real HDR is created by stacking several photos of different exposures together to create a final photo with high contrasts in shadow as well as bright areas. An open source tool for that purpose is “Luminance HDR”. I don’t have really used this program because it used a lot of RAM to stack a few pictures together. I have 8 GB of RAM, which should be sufficient though. Maybe “Luminance HDR” works on your machine better :)

Therefor I will be waiting for Corel to release the update for creating HDR’s in “AfterShot Pro 2”, because I didn’t find a better solution than “Luminance HDR” on Linux yet.

Getting started with OpenFOAM

Some notes before we start …

OpenFOAM is an open-source CFD (computational fluid dynamics) toolbox, which you can use on your GNU/Linux machine. To get started with OpenFOAM you can read the documentation on the website and/or run tutorial cases. For every solver there are several tutorial cases which you can run on your PC. However you probably need to know more to set up your own simulations. First of all some general information on CFD. Every Simulation consists of several steps, you have to go through, before you can view your results. These steps are:

  • Preprocessing
  • Solving
  • Postprocessing

Preprocessing includes building the CAD geometry and deciding on the boundary conditions (BC’s). It means that the CAD geometry will be meshed, which means the surface of the CAD geometry will be used to create an underlying grid, representing your original geometry features. On this grid/mesh the solver calculates the values for the several transport equations (mass, motion and energy). This is meant by the term solving. With the mesh the equations of motion, energy and mass are solved on each grid point. Meaning the more grid points one has (a finer the mesh) the longer it takes to solve the simulation, but also a finer mesh may result in a more accurate solution. Problem is: An accurate solution depends on your mesh (quality and size), algorithms, included simplifications (make your case solvable but inaccurate because you just can’t account for everything).

One example of such a simplification is turbulence. This is a really complex physical process where eddies (velocity fluctuations) of any size occur in a flow field. The physics behind it are not yet fully understood and therefor mathematical models are necessary to simplify this process. Since these eddies range from really small (microscopic) to really large (macroscopic) the requirements on the mesh are extreme to simulate very tiny eddies (DNS – Direct Numerical Simulation). One can account only a range of eddies by applying a filter (LES – Large Eddy Simulation). It is also possible, since turbulence is a highly transient process, to average over time (RANS – Reynolds Averaged Navier Stokes) and therefor reduce the equation of motion by several unknowns, the velocity fluctuations. But enough from turbulence … for now :)

After the solving of the problem you get values for p, U, T (depending on the solver) …

p: Pressure
U: Velocity
T: Temperature

on every grid point. In Postprocessing these values can now be plotted as scalar fields (p, T) or vector fields (U). For postprocessing the tool “paraFoam” (which is Paraview) is included in every OpenFOAM installation. It lets you process the data from the time folders (0, 5, 10 etc.) very easily. Contour plots, surface plots of scalar or vector fields, vector plots (glyphs), slices … you name it. Many filters will help you sort your data, clip and modify data.

There are 3 default folders in every case folder:

  • 0/
  • constant/
  • system/

The folder “0” includes all boundary conditions or initial conditions for your simulation. In “constant” are the properties of the fluids, solids, porous media stored as well as the value of the gravitational vector “g”. Inside this folder you’ll find another folder “polyMesh” which includes the data of your mesh (points, faces etc.). In “system” the properties of the solution algorithms (fvSolution, fvSchemes) and properties of the simulation are stored in the “controlDict”.

Creating a mesh with blockMesh

(to be continued)