Click here to close now.




















Welcome!

Linux Containers Authors: Esmeralda Swartz, Samuel Scott, Mike Kavis, Tim Hinds, Elizabeth White

Related Topics: Linux Containers

Linux Containers: Article

Managing Digital Pictures with Linux

Create your own photo op

In August, as the proverbial dog days of summer were upon us, I found that news in the Linux world slowed as many people went on vacation with their families. Consequently, these Linux users spent a considerable amount of time snapping large numbers of pictures, capturing memories of landmarks, friends, and family.

I too had the privilege of spending almost two weeks with my family on a trip through the Canadian Rockies where I amassed hundreds of pictures on my digital camera. Because storage is cheap and there's little incremental cost in taking digital pictures, I found myself in the situation where I had so many pictures I couldn't begin to organize them effectively without help. So I started to investigate options for organizing these pictures using Linux desktop software.

Extracting Images from Your Digital Camera

There was a time when extracting images from your digital camera to Linux was somewhat cumbersome. Those days have since passed since there are a number of Linux applications designed for use with your digital camera. Transferring pictures from your camera and various types of digital multimedia storage can be accomplished in a variety of ways. The following are the results of my research on how to acquire and manage these pictures on your Linux desktop and a firsthand account of my research.

gtkam

(www.gphoto.org)
gtkam is a popular application for extracting images from your digital camera, and it's very easy to use. Simply connect the camera cable and turn on the camera, then under the Camera menu choose Add Camera (see Figure 1). You should be able to navigate in a file explorer interface to the files stored on your camera. As with any third-party piece of software you may find that new cameras may not be immediately supported, but by and large the most popular digital cameras are supported well under gtkam.

Media Readers

When I travel I have more than enough chargers and cables so I don't synch my camera via cable. Instead I use a PCMCIA media card reader to take pictures off the flash card that I use in my digital camera and transfer them to my hard drive. I do this by using Konqueror to drag and drop pictures from my flash card to directories on my hard drive. I like this option because it allows me to also copy data including documents and presentations from one PC to another. The nice thing about this method is if you change your camera to one that is not well supported under Linux, you can still use your same tried and true method for transferring pictures. You can also use a USB flash reader that reads your flash card.

I like this option once again because it's not dependent on camera compatibilities. Also, if you have multiple flash cards like me you can download images off one card while the other card is in the camera. See the sidebar on how to mount your digital media via USB.

Linux Photo Album Software

Until recently I knew very little about the image browsers and photo album software available on any platform, let alone Linux, so I decided to try out all that I could find. At the onset my agenda was to simply find something easy to use. With a little research I realized that what I wanted was the ability to organize, crop, and fix "bad" pictures, whether that meant darkening those taken in full sun or cropping out the head of an onlooker who spoiled my shot of a notable landmark.

Konqueror

(http://konqueror.kde.org)
You may be familiar with the Konqueror file browser included as an integral part of the KDE desktop or you may have even used Konqueror to browse the Web. This program is a virtual Swiss army knife of tools integrated into one program. For digital picture buffs you can use Konqueror to view a directory of images as thumbnails, and with its integrated image viewer capabilities you can view the images at their actual size (see Figure 2). You can also export the images to an HTML image gallery that you can view locally or upload to the Web. You can also choose which size thumbnails to use in your gallery, which can also serve double duty as a batch-resizing tool (providing you are okay with the 1,000 pixel-wide limitation). Overall, Konqueror is not the most robust tool for viewing and manipulating pictures but it's a well-integrated and easy to use one for viewing images.

kalbum

(www.paldandy.com/kalbum/)
kalbum is an image browser that was included with my KDE desktop. The kalbum image browser allows you to add data to images such as comments and to rotate them when necessary (see Figure 3). In addition, kalbum allows you to create a rudimentary photo album. If your primary goal is to efficiently view the images, kalbum is a fine choice; if your needs are a little more advanced, you should probably keep looking.

digiKam

(http://digikam.sourceforge.net/)
After looking at a number of photo manipulation packages I found that the application that worked best for me was digiKam. It provided a balance of organizational features, presentation formats, and photo editing. Not only can you view images in an album format, but you can manipulate them or even create an HTML photo album that you can upload to a Web site.

Viewing and Managing Photos

One of the most important things for me with my newly acquired scores of digital pictures was the ability to browse through them and organize them so I could find what I wanted quickly. digiKam does a decent job of this. From an image management standpoint I like the way digiKam creates albums that can be designated by "collections" that you modify. These collections or categories then allow you to view by collection or album. In addition, you can right-click on the thumbnails within an album to rename them or add comments. Plus you may want to create slideshows when you share your pictures. Once again this little open source firecracker offers a number of interesting transition effects when viewing a slideshow.

The only thing that I dislike about the digiKam interface is the inability to view pictures in a three-frame interface. Each picture that I want to edit comes up in a separate window, but that can end up causing me to have a bunch of open windows. Rather than just complaining about it, I went to the KDE Web site and entered bug 9007 as a feature request. Maybe this functionality will show up in a future version. Either way it's good practice to try to provide feedback to the open source development community.

Editing Photos

If you're a photography novice as I am, there's nothing you would like better than a second chance. However, that's not all that likely when you have that once-in-a-lifetime shot ruined by a thumb or maybe the wrong exposure. Not to worry. digiKam offers the ability to improve upon our mistakes. The first set of features doesn't alter the content of the picture so much as it removes or reorients the image. The cropping, rotating, and resizing of pictures are all pretty straightforward. You can double-click on a picture from the album view, which spawns the image in a screen where you can directly edit it; a right-click gives you a menu with numerous options. To trim a picture just drag a selection box (clicking and holding the left-mouse button) and then right-click to choose crop and the back of someone's head is instantly removed from a shot.

In addition to the ability to manipulate the size and shape of the picture, digiKam can also alter the content, including adjusting the brightness and contrast or correcting the gamma. (Gamma correction is important for viewing pictures on a computer screen, so if you want to share your images through a Web site, this may be of greater importance than if you just want to print them out.)

Plug-ins

Also available for the digiKam package are a number of plug-ins that extend the functionality of the program. At the time of my research there were nine documented plug-ins that would try to help improve your picture for printing (e.g., adjust levels, noise reduction), as well as special effects plug-ins like an oil painting plug-in and a raindrops special effect. I would guess that more plug-ins are in the works.

Advanced Photo Editing with the GIMP

(www.GIMP.org)
Something would be amiss if I mentioned photo editing and didn't mention one of the most popular and powerful image editing tools available for Linux and other platforms as well. This package is known as the GIMP (GNU Image Manipulation Program). The GIMP is a powerful multiplatform photo manipulation tool. If you are familiar with the popular Adobe Photoshop program (www.adobe.com/products/photoshop/main.html), you'll probably find the GIMP somewhat familiar.

You can use GIMP to create vignettes, add text, or alter the pictures in a variety of ways (see Figure 4). You can even create alterations using the extensive filters to distort or add special effects to an image. Plus, the GIMP does have the ability to acquire images right from your camera. I can't begin to do justice to all the features in this powerful image-manipulation package but, whether you are a Linux user or a user of another operating system, the GIMP is well worth checking out.

Summary

Hopefully you now have all the information you need to manipulate and view digital pictures on your Linux desktop. Also, it's interesting to note that all the software highlighted in this article falls under a free license so the acquisition cost of this software is pretty much limited to your time and your bandwidth. Also, if you are so inclined, you can even improve upon the work by authoring an improvement or helping with the product to meet your needs and probably that of someone else.

SIDEBAR

USB Media Readers and Linux

When it comes to extracting pictures from your digital camera, you can either read from the camera or read the media. If you lose your camera cable (as I have done many times), it may be easier just to read the media from your camera directly whether it be flash RAM, SmartCard, or some other format. I have both a PCMCIA flash card reader that, as far as Linux is concerned, looks like a hard drive and a USB flash card reader. Since the latter is most likely the situation you'll be in, I'll share the following steps to mount your card and copy your files from the portable medium to your PC.

Step 1: Locate Your USB Drive

As you may already know, Linux devices are listed in the /dev directory. This is also the place to find your USB devices. My guess is that once you have plugged in your USB reader with the storage card, your card will be /dev/sda1. There are a number of ways to try to discern what device name is assigned to your hardware, but my experience has shown the fastest way is to just try to mount the device, and if you get errors try the next one. For example, try to mount /dev/sda1. If that doesn't work, try sda2, sda3, etc. Then you can try the same procedure with /dev/sdb1...you get the picture. However, if you want to try to be more scientific, try to identify the USB controller that's mapped to an SCSI device on your system using sg_map. As the root user you can run sg_map -i to find out which is your compact flash drive. Here's an example of my results from my laptop with a USB flash reader:

mrhinkle@linux:~> su
Password:
linux:/home/mrhinkle # sg_map -i
/dev/sg0 /dev/sda Generic STORAGE DEVICE 1.01
linux:/home/mrhinkle #

Note that my storage device is at /dev/sda# where in this case the number is 1.

Step 2: Mount the Device

Mounting a file system simply means attaching a hardware device to the Linux file system somewhere in the hierarchy. In my case I have a /mnt directory, so to mount my flash drive I do the following:

linux:/mnt # mkdir flash
linux:/mnt # mount -t vfat /dev/sda1 /mnt/flash
linux:/mnt # cd /mnt/flash
linux:/mnt/flash # ls
. .. bootex.log dcim found.000 found.001 misc system .Trash-mrhinkle

The first step was to make a directory or mount point (mkdir /mnt/flash) at the point where I wanted to access the card. The second part is to execute the mount command, which requires you to be root or superuser. The anatomy of the command is as follows:

  • mount: The command to attach a file system
  • -t: The flag for type
  • vfat: The argument indicating the file system type (which is a DOS format)
  • /dev/sda1: The device hosting the file system I want to access
  • /mnt/flash: The directory where I want to mount the file system
This may be overly simplified for those experienced users, but it was complicated for me the first time so I thought I would spell it out in greater detail.

Step 3: Copying Files

Once you have your digital medium mounted at the directory point, you can copy the files by navigating back and forth through your favorite graphical file manager (Konqueror for KDE users, Nautilus for Gnome users), or simply dragging and dropping files from one window to another.

More Stories By Mark R. Hinkle

Mark Hinkle is the Senior Director, Open Soure Solutions at Citrix. He also is along-time open source expert and advocate. He is a co-founder of both the Open Source Management Consortium and the Desktop Linux Consortium. He has served as Editor-in-Chief for both LinuxWorld Magazine and Enterprise Open Source Magazine. Hinkle is also the author of the book, "Windows to Linux Business Desktop Migration" (Thomson, 2006). His blog on open source, technology, and new media can be found at http://www.socializedsoftware.com.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@ThingsExpo Stories
WebRTC has had a real tough three or four years, and so have those working with it. Only a few short years ago, the development world were excited about WebRTC and proclaiming how awesome it was. You might have played with the technology a couple of years ago, only to find the extra infrastructure requirements were painful to implement and poorly documented. This probably left a bitter taste in your mouth, especially when things went wrong.
Too often with compelling new technologies market participants become overly enamored with that attractiveness of the technology and neglect underlying business drivers. This tendency, what some call the “newest shiny object syndrome,” is understandable given that virtually all of us are heavily engaged in technology. But it is also mistaken. Without concrete business cases driving its deployment, IoT, like many other technologies before it, will fade into obscurity.
While many app developers are comfortable building apps for the smartphone, there is a whole new world out there. In his session at @ThingsExpo, Narayan Sainaney, Co-founder and CTO of Mojio, will discuss how the business case for connected car apps is growing and, with open platform companies having already done the heavy lifting, there really is no barrier to entry.
As more intelligent IoT applications shift into gear, they’re merging into the ever-increasing traffic flow of the Internet. It won’t be long before we experience bottlenecks, as IoT traffic peaks during rush hours. Organizations that are unprepared will find themselves by the side of the road unable to cross back into the fast lane. As billions of new devices begin to communicate and exchange data – will your infrastructure be scalable enough to handle this new interconnected world?
SYS-CON Events announced today that Micron Technology, Inc., a global leader in advanced semiconductor systems, will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Micron’s broad portfolio of high-performance memory technologies – including DRAM, NAND and NOR Flash – is the basis for solid state drives, modules, multichip packages and other system solutions. Backed by more than 35 years of technology leadership, Micron's memory solutions enable the world's most innovative computing, consumer,...
SYS-CON Events announced today that Pythian, a global IT services company specializing in helping companies leverage disruptive technologies to optimize revenue-generating systems, has been named “Bronze Sponsor” of SYS-CON's 17th Cloud Expo, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Founded in 1997, Pythian is a global IT services company that helps companies compete by adopting disruptive technologies such as cloud, Big Data, advanced analytics, and DevOps to advance innovation and increase agility. Specializing in designing, imple...
SYS-CON Events announced today that HPM Networks will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. For 20 years, HPM Networks has been integrating technology solutions that solve complex business challenges. HPM Networks has designed solutions for both SMB and enterprise customers throughout the San Francisco Bay Area.
Consumer IoT applications provide data about the user that just doesn’t exist in traditional PC or mobile web applications. This rich data, or “context,” enables the highly personalized consumer experiences that characterize many consumer IoT apps. This same data is also providing brands with unprecedented insight into how their connected products are being used, while, at the same time, powering highly targeted engagement and marketing opportunities. In his session at @ThingsExpo, Nathan Treloar, President and COO of Bebaio, will explore examples of brands transforming their businesses by t...
With the proliferation of connected devices underpinning new Internet of Things systems, Brandon Schulz, Director of Luxoft IoT – Retail, will be looking at the transformation of the retail customer experience in brick and mortar stores in his session at @ThingsExpo. Questions he will address include: Will beacons drop to the wayside like QR codes, or be a proximity-based profit driver? How will the customer experience change in stores of all types when everything can be instrumented and analyzed? As an area of investment, how might a retail company move towards an innovation methodolo...
Through WebRTC, audio and video communications are being embedded more easily than ever into applications, helping carriers, enterprises and independent software vendors deliver greater functionality to their end users. With today’s business world increasingly focused on outcomes, users’ growing calls for ease of use, and businesses craving smarter, tighter integration, what’s the next step in delivering a richer, more immersive experience? That richer, more fully integrated experience comes about through a Communications Platform as a Service which allows for messaging, screen sharing, video...
The Internet of Things (IoT) is about the digitization of physical assets including sensors, devices, machines, gateways, and the network. It creates possibilities for significant value creation and new revenue generating business models via data democratization and ubiquitous analytics across IoT networks. The explosion of data in all forms in IoT requires a more robust and broader lens in order to enable smarter timely actions and better outcomes. Business operations become the key driver of IoT applications and projects. Business operations, IT, and data scientists need advanced analytics t...
A producer of the first smartphones and tablets, presenter Lee M. Williams will talk about how he is now applying his experience in mobile technology to the design and development of the next generation of Environmental and Sustainability Services at ETwater. In his session at @ThingsExpo, Lee Williams, COO of ETwater, will talk about how he is now applying his experience in mobile technology to the design and development of the next generation of Environmental and Sustainability Services at ETwater.
SYS-CON Events announced today that IceWarp will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. IceWarp, the leader of cloud and on-premise messaging, delivers secured email, chat, documents, conferencing and collaboration to today's mobile workforce, all in one unified interface
As more and more data is generated from a variety of connected devices, the need to get insights from this data and predict future behavior and trends is increasingly essential for businesses. Real-time stream processing is needed in a variety of different industries such as Manufacturing, Oil and Gas, Automobile, Finance, Online Retail, Smart Grids, and Healthcare. Azure Stream Analytics is a fully managed distributed stream computation service that provides low latency, scalable processing of streaming data in the cloud with an enterprise grade SLA. It features built-in integration with Azur...
Akana has announced the availability of the new Akana Healthcare Solution. The API-driven solution helps healthcare organizations accelerate their transition to being secure, digitally interoperable businesses. It leverages the Health Level Seven International Fast Healthcare Interoperability Resources (HL7 FHIR) standard to enable broader business use of medical data. Akana developed the Healthcare Solution in response to healthcare businesses that want to increase electronic, multi-device access to health records while reducing operating costs and complying with government regulations.
For IoT to grow as quickly as analyst firms’ project, a lot is going to fall on developers to quickly bring applications to market. But the lack of a standard development platform threatens to slow growth and make application development more time consuming and costly, much like we’ve seen in the mobile space. In his session at @ThingsExpo, Mike Weiner, Product Manager of the Omega DevCloud with KORE Telematics Inc., discussed the evolving requirements for developers as IoT matures and conducted a live demonstration of how quickly application development can happen when the need to comply wit...
The Internet of Everything (IoE) brings together people, process, data and things to make networked connections more relevant and valuable than ever before – transforming information into knowledge and knowledge into wisdom. IoE creates new capabilities, richer experiences, and unprecedented opportunities to improve business and government operations, decision making and mission support capabilities.
Explosive growth in connected devices. Enormous amounts of data for collection and analysis. Critical use of data for split-second decision making and actionable information. All three are factors in making the Internet of Things a reality. Yet, any one factor would have an IT organization pondering its infrastructure strategy. How should your organization enhance its IT framework to enable an Internet of Things implementation? In his session at @ThingsExpo, James Kirkland, Red Hat's Chief Architect for the Internet of Things and Intelligent Systems, described how to revolutionize your archit...
MuleSoft has announced the findings of its 2015 Connectivity Benchmark Report on the adoption and business impact of APIs. The findings suggest traditional businesses are quickly evolving into "composable enterprises" built out of hundreds of connected software services, applications and devices. Most are embracing the Internet of Things (IoT) and microservices technologies like Docker. A majority are integrating wearables, like smart watches, and more than half plan to generate revenue with APIs within the next year.
Growth hacking is common for startups to make unheard-of progress in building their business. Career Hacks can help Geek Girls and those who support them (yes, that's you too, Dad!) to excel in this typically male-dominated world. Get ready to learn the facts: Is there a bias against women in the tech / developer communities? Why are women 50% of the workforce, but hold only 24% of the STEM or IT positions? Some beginnings of what to do about it! In her Opening Keynote at 16th Cloud Expo, Sandy Carter, IBM General Manager Cloud Ecosystem and Developers, and a Social Business Evangelist, d...