Hands-On Computer Vision with Julia

Dmitrijs Cudihins



Explore the various packages in Julia that support image processing and learn the process of image processing and building neural networks to video processing and object tracking.

Key Features

  • Learn how to build a full-fledged image processing application using open source tools and libraries,
  • Perform basic to advanced image as well as video stream processing with Julia's APIs.
  • Understand and optimize various features of OpenCV with the help of easy-to-grasp examples.

Book Description

This book is a thorough guide for developers who want to get started with building computer vision applications using Julia. Julia is well suited to image processing because of its ease of use along with in built provisions to write easy to compile and efficient machine code.

We begin this book by introducing you to Julia's image processing libraries like Images.jl and ImageCore.jl. We then look at analyzing and transforming images using JuliaImages, some of the techniques discussed include enhancing, adjusting etc. The next part of book deals classifying images, clustering and application of neural networks to solve computer vision problems. Moving forward you will explore applications of Open CV to perform real time computer vision analysis for e.g. face detection, object tracking etc. We quickly look at interaction of Julia with Tesseract to perform optical character recognition. Finally we will build an application that brings together all the techniques which were introduced previously which strengthen the concepts learnt.

By end of the book you will have understood how to utilize various Julia packages and few open source libraries like Tesseract and Open CV to solve computer vision problems with ease

What you will learn

  • Analyze image metadata and identify critical information using JuliaImages.
  • Apply filters and improve image quality and color scheme.
  • Extract 2D features for image comparison using JuliaFeatures.
  • Cluster and classify images using KNN and SVM machine learning algorithms.
  • Recognize text on an image using Tesseract library.
  • Utilize OpenCV to Recognize specific object or faces on images and videos.
  • Build neural network and classify image with MXNet.

Who This Book Is For

Julia developers who are interested in learning how to perform image processing and who want to explore the field of computer vision will benefit from this book. A basic knowledge of Julia will help in understanding concepts better.