Wednesday, January 27, 2016

Highlights and new discoveries in Computer Vision, Machine Learning, and AI (January 2016)

In the first issue of this monthly digest series you can find out what important people think about the imminent (killer) robot revolution, which deep learning toolkit might be the fastest on Yahoo's 13.5TB of open-source social media data, how fire-proof drones will soon scour burning buildings for survivors, and much more.

Sunday, January 24, 2016

Beginners' 10 most common Java programming mistakes revealed by Big Data

What's the most common programming mistake beginners make? Perhaps that they always confuse equality (==) with assignment (=), or & with &&? Or perhaps that they always use the wrong separators in for-loops (for (int i = 0, i < 5, i++))...?

To answer this question, data scientists recently looked at the mistakes from over 250,000 Java programming novices from all over the world. Using a massive amount of data (source code from 37 million compilations, to be exact), they revealed the most common errors that students make when they first learn Java, and how long it typically takes them to learn from their mistakes. The results are surprising.

Friday, January 22, 2016

How to install OpenCV 3.1 for Python on Ubuntu 14.04

OpenCV 3.1 was just released a few weeks ago and features a wealth of new features, aggregated from GitHub community members, students and mentors, as well as the Google Summer of Code. Time to upgrade your installation!

Installing OpenCV can quickly turn into a nightmare, especially if you want to use either the latest code base or some non-standard options (such as features from the opencv_contrib repository or OpenNI support for depth sensors such as Microsoft Kinect). The following guide will show you how to install OpenCV 3.1 for Python with all its fancy options on Ubuntu 14.04 LTS (either via conda or from source) in ten easy steps!

Wednesday, January 13, 2016

How to create a beautiful pencil sketch effect with OpenCV and Python

Interesting image filter effects, such as a pencil sketch or a cartoonizer effect, do not have to be very computationally involved to look good. In fact, in order to create a beautiful black-and-white pencil sketch effect, all you essentially need is some blurring and two image blending techniques called dodging and burning.

Monday, January 11, 2016

7 tips & tricks to get you started on the Unix command line

In a world where people are used to interact with technology by sliding their thumbs over shiny buttons, the command line often seems like an archaic way of interacting with an OS. Surely the Unix shell is supposed to help you quickly interact with the file system or automate mundane tasks–but don't you need a neckbeard to understand all this stuff anyway?

You'd be surprised to find that even for clean-shaven people the learning curve is not that steep. Ever found yourself stabbing the Up key hundreds of times because you can't find that command you typed in a couple of minutes ago? Can't remember the syntax to unarchive that darn .tar file? No clue why Ctrl+C and Ctrl+V won't work? Don't worry, ask a Swiss! All you need is a short list of tips and tricks and you'll find yourself saving lots of time on the command line. No uncontrolled hair growth required.

Friday, January 8, 2016

Last chance to save big on OpenCV with Python Blueprints!

Time is running out to purchase the eBook version of OpenCV with Python Blueprints for $5 as part of Packt's "Skill up" sale!

The book demonstrates how to develop a series of intermediate to advanced projects using OpenCV and Python, rather than teaching the core concepts of OpenCV in theoretical lessons. Instead, the working projects developed in this book teach the reader how to apply their theoretical knowledge to topics such as image manipulation, augmented reality, object tracking, 3D scene reconstruction, statistical learning, and object categorization.

What readers on Amazon have to say:

The author does a great job explaining the concepts needed to understand what’s happening in the application without the need of going into too many details.

– Sebastian Montabone, 5 stars

12 advanced Git commands I wish my co-workers would know

© xkcd

Once you have internalized the basic work flow, Git is a powerful tool for distributed version control that offers a lot of advantages over more clunky alternatives like SVN. You clone, you pull, you commit, you push; nothing simpler than that. Right.

But then you find yourself stuck with a merge conflict, and git sends you down the rabbit hole. Or you accidentally added a commit to the wrong branch and already pushed it to the remote repo. Or you need to switch to a different branch (just for a second!) but git won't let you because you have unsaved changes. And what if you need to patch your code with that one commit from a completely different branch (but nothing else)?

The following guide compiles a list of useful advanced Git commands that will make your everyday coding life easier. Oh, and make sure your co-workers know them, too...

Tuesday, January 5, 2016

How to create a cool cartoon effect with OpenCV and Python

Over the last few years professional cartoonizer software has popped up all over the place but is only rarely freeware. In order to achieve the basic cartoon effect, you don't need powerful rendering software or even years of experience. All you need is essentially a bilateral filter and some edge detection. The bilateral filter will reduce the color palette, which is essential for the cartoon look, and edge detection will allow you to produce bold silhouettes.