Welcome!

Linux Containers Authors: Liz McMillan, Elizabeth White, Pat Romanski, Yeshim Deniz, Amit Gupta

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:

[email protected]:~> 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
DXWorldEXPO LLC, the producer of the world's most influential technology conferences and trade shows has announced the 22nd International CloudEXPO | DXWorldEXPO "Early Bird Registration" is now open. Register for Full Conference "Gold Pass" ▸ Here (Expo Hall ▸ Here)
The Jevons Paradox suggests that when technological advances increase efficiency of a resource, it results in an overall increase in consumption. Writing on the increased use of coal as a result of technological improvements, 19th-century economist William Stanley Jevons found that these improvements led to the development of new ways to utilize coal. In his session at 19th Cloud Expo, Mark Thiele, Chief Strategy Officer for Apcera, compared the Jevons Paradox to modern-day enterprise IT, examin...
Major trends and emerging technologies – from virtual reality and IoT, to Big Data and algorithms – are helping organizations innovate in the digital era. However, to create real business value, IT must think beyond the ‘what’ of digital transformation to the ‘how’ to harness emerging trends, innovation and disruption. Architecture is the key that underpins and ties all these efforts together. In the digital age, it’s important to invest in architecture, extend the enterprise footprint to the cl...
DXWorldEXPO LLC announced today that All in Mobile, a mobile app development company from Poland, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. All In Mobile is a mobile app development company from Poland. Since 2014, they maintain passion for developing mobile applications for enterprises and startups worldwide.
DXWorldEXPO LLC announced today that ICC-USA, a computer systems integrator and server manufacturing company focused on developing products and product appliances, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, in New York City. ICC is a computer systems integrator and server manufacturing company focused on developing products and product appliances to meet a wide range of ...
In an era of historic innovation fueled by unprecedented access to data and technology, the low cost and risk of entering new markets has leveled the playing field for business. Today, any ambitious innovator can easily introduce a new application or product that can reinvent business models and transform the client experience. In their Day 2 Keynote at 19th Cloud Expo, Mercer Rowe, IBM Vice President of Strategic Alliances, and Raejeanne Skillern, Intel Vice President of Data Center Group and ...
"We are a well-established player in the application life cycle management market and we also have a very strong version control product," stated Flint Brenton, CEO of CollabNet,, in this SYS-CON.tv interview at 18th Cloud Expo at the Javits Center in New York City, NY.
In his session at @ThingsExpo, Arvind Radhakrishnen discussed how IoT offers new business models in banking and financial services organizations with the capability to revolutionize products, payments, channels, business processes and asset management built on strong architectural foundation. The following topics were covered: How IoT stands to impact various business parameters including customer experience, cost and risk management within BFS organizations.
Here are the Top 20 Twitter Influencers of the month as determined by the Kcore algorithm, in a range of current topics of interest from #IoT to #DeepLearning. To run a real-time search of a given term in our website and see the current top influencers, click on the topic name. Among the top 20 IoT influencers, ThingsEXPO ranked #14 and CloudEXPO ranked #17.
While the focus and objectives of IoT initiatives are many and diverse, they all share a few common attributes, and one of those is the network. Commonly, that network includes the Internet, over which there isn't any real control for performance and availability. Or is there? The current state of the art for Big Data analytics, as applied to network telemetry, offers new opportunities for improving and assuring operational integrity. In his session at @ThingsExpo, Jim Frey, Vice President of S...
With the introduction of IoT and Smart Living in every aspect of our lives, one question has become relevant: What are the security implications? To answer this, first we have to look and explore the security models of the technologies that IoT is founded upon. In his session at @ThingsExpo, Nevi Kaja, a Research Engineer at Ford Motor Company, discussed some of the security challenges of the IoT infrastructure and related how these aspects impact Smart Living. The material was delivered interac...
Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
Amazon started as an online bookseller 20 years ago. Since then, it has evolved into a technology juggernaut that has disrupted multiple markets and industries and touches many aspects of our lives. It is a relentless technology and business model innovator driving disruption throughout numerous ecosystems. Amazon’s AWS revenues alone are approaching $16B a year making it one of the largest IT companies in the world. With dominant offerings in Cloud, IoT, eCommerce, Big Data, AI, Digital Assista...
In his session at Cloud Expo, Alan Winters, U.S. Head of Business Development at MobiDev, presented a success story of an entrepreneur who has both suffered through and benefited from offshore development across multiple businesses: The smart choice, or how to select the right offshore development partner Warning signs, or how to minimize chances of making the wrong choice Collaboration, or how to establish the most effective work processes Budget control, or how to maximize project result...
The Founder of NostaLab and a member of the Google Health Advisory Board, John is a unique combination of strategic thinker, marketer and entrepreneur. His career was built on the "science of advertising" combining strategy, creativity and marketing for industry-leading results. Combined with his ability to communicate complicated scientific concepts in a way that consumers and scientists alike can appreciate, John is a sought-after speaker for conferences on the forefront of healthcare science,...
In his keynote at 19th Cloud Expo, Sheng Liang, co-founder and CEO of Rancher Labs, discussed the technological advances and new business opportunities created by the rapid adoption of containers. With the success of Amazon Web Services (AWS) and various open source technologies used to build private clouds, cloud computing has become an essential component of IT strategy. However, users continue to face challenges in implementing clouds, as older technologies evolve and newer ones like Docker c...
When shopping for a new data processing platform for IoT solutions, many development teams want to be able to test-drive options before making a choice. Yet when evaluating an IoT solution, it’s simply not feasible to do so at scale with physical devices. Building a sensor simulator is the next best choice; however, generating a realistic simulation at very high TPS with ease of configurability is a formidable challenge. When dealing with multiple application or transport protocols, you would be...
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, discussed the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
Personalization has long been the holy grail of marketing. Simply stated, communicate the most relevant offer to the right person and you will increase sales. To achieve this, you must understand the individual. Consequently, digital marketers developed many ways to gather and leverage customer information to deliver targeted experiences. In his session at @ThingsExpo, Lou Casal, Founder and Principal Consultant at Practicala, discussed how the Internet of Things (IoT) has accelerated our abilit...
Detecting internal user threats in the Big Data eco-system is challenging and cumbersome. Many organizations monitor internal usage of the Big Data eco-system using a set of alerts. This is not a scalable process given the increase in the number of alerts with the accelerating growth in data volume and user base. Organizations are increasingly leveraging machine learning to monitor only those data elements that are sensitive and critical, autonomously establish monitoring policies, and to detect...