Archive for the ‘Software’ Category
Dealing with Bugs in digiKam
Bugs are inevitable in complex software, and digiKam is no exception. So what should you do when you’ve discovered a bug in your favorite photo management application? As a non-programmer, the best thing you can do is to file the bug with the KDE bug tracking system (digiKam is managed as part of the KDE project). Submitting bugs can be considered a tedious task, but this greatly helps the developers to improve digiKam, and the KDE bug tracking system makes it relatively easy to file bugs and issues.
First of all, you have to create an account with the bug tracking system. To do this, point your browser to https://bugs.kde.org/, press the New Account button, and create a new account. Once you’ve done that, log in to the system using the specified credentials. Before you submit the bug, it’s important to make sure that it hasn’t already been filed in the system. Click the Search link, select digikam from the Product drop-down list, enter the keywords that best describe the bug in the Words field, and press Search. Check the list of the matching results for entries similar to your bug.
If the bug doesn’t appear in the search results, you can submit it to the system. Click the New link at the top and select digiKam from the list of KDE projects. Since you’ve already checked for similar bugs, you can skip Step 1 and go directly to Step 2. The fields in the bug filing form contain brief descriptions and examples, which make it easier to provide the relevant data. It’s important to give as much information as possible, as this helps developers to reproduce, identify, and ultimately fix the bug. Double-check the entered information, and hit the Submit Bug Report button. You can view all your filed bugs using the My Bugs link in the Saved Searches section.
Create a Bleach Bypass Effect in digiKam
Using tools available in digiKam, you can simulate a number of effects, including bleach bypass. This effect produces a desaturated high-contrast image. Creating the bleach bypass effect in digiKam is done in two simple steps. Open a photo for editing and choose Color → Hue/Saturation/Lightness. Specify the desired saturation value somewhere between -35 and -59, then press OK to desaturate the photo.
Choose then Color → Curves Adjust, select Luminosity from the Channel drop-down list, and adjust the curve so it’s shaped as S. Feel free to experiment with the steepness of the curve to achieve the best result. As a starting point, you can download a ready-made S curve and import it into digiKam using the Load button.
Basic RAW Processing in digiKam
For this project, we’ll use a photo of the famous Sagrada Familia cathedral in Barcelona, Spain (you can download the RAW file from https://www.box.com/s/cq3uknqt54o3usf1jg3r). The photo was taken with a Canon PowerShot S90 camera, and the RAW file exhibits several obvious flaws, including visible barrel distortion, underexposed areas, and noise. In other words, this particular RAW file is perfect for tweaking in digiKam.
Before you start, make sure that digiKam is set to open RAW files in the 16-bit mode using the default settings. To do this, choose Settings → Configure digiKam and switch to the Raw Decoding section. Enable the Use the default settings, 16 bit option and press OK. Open then the RAW file for editing using the F4 key (or choose Image → Edit).
The first order of business is to fix the lens distortion. Since the LenFun library used by digiKam for automatic lens correction doesn’t have a lens profile for Canon PowerShot S90, you have to fix lens distortion manually. Choose Enhance → Lens → Distortion, then use the Main slider to set the correction value. Alternatively, you can enter the exact value in the field next to the slider. For this particular file, the -27 value should do the trick. Check the preview image to make sure that the distortion is properly corrected, and press OK to apply the correction.
Although the Canon PowerShot S90 did a respectable job of producing a well-exposed image, the photo still has slightly underexposed areas. The easiest way to fix this problem is to use the Local Contrast tool (Enhance → Local Contrast). The default values should do the trick, but feel free to experiment with different settings. But don’t try to push them too far, as the final result may look unnatural. Also, before you start modifying the default settings, save them as a preset using the Save As button. Later, you can restore the original settings from the preset using the Load button.
Next stop is the Noise Reduction tool (Enhance → Noise Reduction). While the default noise reduction settings work fine in most situations, you might want to adjust them to achieve even better results. When experimenting with different noise reduction settings, it’s a good idea to switch to the 100% crop, which gives you a much better view of the noise reduction effect. To do this, select 100% from the Zoom drop-down list. You can then use the scrollbars to view the desired part of the photo. Alternatively, you can use the Pan button in the lower-right corner of the preview window to display a thumbnail of the photo and pan by dragging the red square to the desired area in the image. To preview the noise reduction result, use the Try button.
Finally, the photo could use some sharpening, so choose Enhance → Sharpen, adjust the sharpness level using the Sharpness slider, and press Try to preview the result. Again, you might want to switch to the 100% crop for a better preview.
Export Photos from digiKam via DLNA
Need to quickly push photos in digiKam to a device on the same network? Provided the device supports DLNA, you can do this using the DLNAExport Kipi plugin. Choose Export → Export via DLNA to open the DLNA Export wizard. From the Choose the implementation drop-down list, select either HUPnP API or miniDLNA. Both options have their advantages and drawbacks. miniDLNA supports thumbnails and works with all DLNA-compatible devices. But it can’t handle hierarchical folders or virtual albums. Also, miniDLNA relies on the older UPnP 1.0.0 protocol. HUPnP, in turn, uses the latest UPnP protocol and supports hierarchical folders and virtual albums. The drawbacks include the lack of support for Sony devices and thumbnails.
If you choose the miniDLNA option, you have to install the miniDLNA package on your system. To do this on Debian and Ubuntu-based Linux distributions, run the apt-get install minidlna command as root. Once miniDLNA has been installed, press the Find button in the DLNA Export window and specify the path to the miniDLNA binaries (usually it’s /usr/bin).
Press then the Next button, and select the collection you want to export. You have three options here: you can pick the desired albums in the My Albums section, or select tags under the My Tags tab to export photos containing specific tags. If you already have saved searches in digiKam, you can select them in the My Searches section to export photos matching specified search criteria. Note that tags and searches cannot be used with miniDLNA, as it doesn’t support virtual albums.
Press Next again and hit the Start button to start the DLNA server. You can then access the shared photos from any device on the network using a dedicated DLNA client, or DLNA-enabled software.
digiKam Recipes 3.11.01 Released
A new version of the digiKam Recipes ebook is available for download. The following material has been added since version 3.9.39:
- Create a Bleach Bypass Effect
- Export Photos via DLNA
- Process Film Negatives
- Calibrate and Profile Monitor for Use with digiKam
- Use Photoshop Curve Presets with digiKam
- Import Photos from a Remote Server into digiKam
As usual, the new release features minor fixes and improvements. Readers who already purchased the book will receive the new version free of charge. If you haven’t received your copy, please send your order confirmation as proof of purchase to dmpop@linux.com, and I’ll email you the latest version of the book.
Happy reading!
Monkeying Around with Lens Calibration
I spent the best part of a day trying to create a lens profile for my trusty Canon PowerShot S90. In theory, it should be a rather straightforward thing to do. The Creating lens distortion models with Hugin’s lens calibrator article provides easy-to-follow instructions on how to create a lens distortion model.
I used a single RAW file to generate a simple model (see the screenshot above). I then added the following lens profile to the /usr/share/lensfun/compact-canon.xml file:
<lens>
<maker>Canon</maker>
<model>Canon PowerShot S90</model>
<mount>canonS90</mount>
<cropfactor>4.6</cropfactor>
<calibration>
<distortion model="ptlens" focal="6" a="0.01463" b="-0.07992" c="0.00461" />
</calibration>
</lens>
So far, so good. digiKam seems to pick the added lens profile, but the Auto-Correction tool (Enhance → Lens → Auto-correction) produces a rather strange result:
I can’t figure out what I’m doing wrong, so if you have a suggestion, feel free to chime in.
Process Film Negatives with digiKam
While digiKam is first and foremost an application for processing and organizing digital photos, it also features tools for working with film negatives.
Before you can process negatives in digiKam, you need to digitize them. If you don’t have access to a film scanner or a lab that offers film scanning services, you can digitize film using a DSLR camera (there are plenty of tutorials on how to do that on the Web). The rest of the process assumes that you are using the latter way to digitize film negatives.
Open a RAW file containing a film negative in the editor (choose Tools → Image Editor or press F4). Crop the original file and apply lens correction if necessary. Choose then Color → Invert to transform the negative into a positive image. In case you work with the color negative, the converted image most likely requires some additional tweaking. First of all, the converted image is likely to have a strong blue tint. The easiest way to remove it is to use digiKam’s Auto-Correction tool. Choose Color → Auto-Correction and select one of the presets. In many cases, the Auto Levels or Equalize presets do a decent job of correcting the colors. If the colors still look slightly off, you can adjust them further using the Colors → Color Balance tool.
The Invert feature in combination with an Auto-Correct preset provides a quick-and-dirty way of converting negatives, but digiKam has another tool designed specifically for processing color negatives. To access it, choose the Color → Color Negative command. The Color Negative Film interface contains several handy features that can help you to convert the negative and tweak the resulting image. While the Invert tool uses a generic profile for converting negatives, the Color Negative Film interface offers film profiles for many popular film types. So the first step is to select the appropriate profile. For better results, try to enable the Color Balance option, too. If the used film is not in the list, you can use the Neutral profile as a fall back.
Although choosing the matching film profile may yield a better result, the converted image may still require some work. In most cases, you may need to adjust the white point to remove the remaining blue tint. You can do this either manually or automatically using the appropriate buttons. Usually, the automatic white point adjustment does the job, but the resulting image needs to be brightened up by adjusting the Gamma input value slider.
Track Photo Locations on Android Device using GPS Map
The GPS Map app can turn an Android device into a handy tool for keeping track of locations you’ve already photographed or plan to photograph later. The app allows you to add so-called placemarks to the map, and you can use photos stored on your Android device as markers.
Adding a placemark in GPS Map requires several steps, but ultimately it’s a rather straightforward thing to do. Long-tap on the desired location on the map and tap Yes. Tap then Marker → Import Image. To import an existing photo, tap Gallery (or Browse) and select the desired photo.

Adding a photo to a placemark
If the selected photo contains geographical coordinates, you can attach the photo to the current placemark using the Import Image button, or you can import the photo as a new placemark by tapping on Import Image & Placemark.
Once you’ve attached the photo to the placemark, return to the Placemark Edit screen, modify the default description is necessary and tap the Confirm button to add the placemark. You should then see the placemark with a tiny thumbnail of the attached photo on the map. You can create as many placemarks as you need and use the Settings → Placemarks screen to manage existing placemarks.
GPS Map’s interface is somewhat unpolished, and the app can be slow at times, but if you are looking for a tool that can help you to track locations in an efficient manner, then the app is just the ticket.
Import Photos from a Remote Server into digiKam
Using commands under the Import menu, you can pull photos from a variety of sources, including remote servers. The latter functionality in digiKam is provided through the KioExportImport Kipi plugin which supports common protocols like FTP, SSH, and SMB.
To pull photos from a remote server, choose the Import → Import from remote computer command. In the import dialog window, press the Add Images button to open the Select Images dialog. There are two ways to access photos stored on a remote server. If the machine runs on the local network, you can access it by choosing the Network item in the Places panel (if the panel is not visible, press F9 to enable it). This will show all shares and services available on the local network. Navigate then to the desired share and select the photos you want to import.
To access remote servers outside your local network, click on the Location field and enter the server’s URL. The URL must start with the protocol prefix (e.g., fish:// (for the SSH protocol or smb:// for the SMB protocol).
Once you’ve located the source directory, select the desired images and press Open to add them to the list of imported photos. In the My Albums pane, select the target album (or create a new one), and press the Start Import button to import the photos into digiKam.
Use Adobe Photoshop Curve Presets with digiKam
While digiKam can’t handle Adobe Photoshop curve presets directly, the application supports curves in the GIMP-compatible CRV format. So if you want to use Adobe Photoshop curve presets with digiKam, you have to convert them into .crv files — and the acv2gimp.py Python script can help you with that. Before you put the script to use, make sure that Python is installed on your system. Next, use the chmod +x acv2gimp.py command to make the script executable. Once you’ve done that, you can convert a curve preset by running the ./acv2gimp.py command followed by the name of the file in the ACV format:
./acv2gimp.py curvepreset.acv
By default, the converted file has the same name as the original preset sans the file extension (e.g., curvepreset.acv becomes curvepreset), but you can use the -o parameter to specify a different name:
./acv2gimp.py -o converteredcurvepreset.crv curvepreset.acv
To load the converted curve preset in digiKam, open a photo for editing and choose Colors → Curves Adjust. Press then the Load button and select the converted curve.














