Welcome

Welcome to this newbie tech-savvy blog ! Enjoy !

Monday, November 30, 2015

Face Detection and Blurring

Introduction


What is it?


We have chosen “Face Detection and Blurring” for the topic of our project. We have created a functional Graphical User Interface (GUI) and the face detection and blurring program. MATLAB is used as it is a well-known image processing tool, with the ease of use and easy to learn. This program is mainly used to detect if there is any face on the image that the user chooses. It is using Viola-Jones Object Detection Framework, as it is the first ever real-time face detection system. Viola-Jones Object Detection Framework is a framework that is being used as an object detection, but also is particularly successful to be used as a face detection. It enables an accurate and fast detection by combining three most important part, which is integral image, attentional cascade and adaboost. All three is used for an efficient computational resource allocation to create a fast detection system.

Face detection is a form of object detection, but it is the most complex and challenging as it requires a lot of variation in the face distribution. The high variation caused it to have few limitations that depend on lighting, expression, and facial features. Pose variations and camera position will also be the limitation of a face detection system. This condition has brought a focus only on a detection with a good lighting and frontal faces. Wang, Y,Q, (2014) said that a face detector should be able to detect if an image contains a human face and also detect where is the exact pixel location of it. In order to avoid any misclassification, binary classification is being used to minimize both false positives and negatives to be able to perform. It requires the program to be able to see the differences between human and the other objects that present on an image. It is efficient to use and perform well by applying such techniques as integral image and attentional cascade.

Based on Yang’s survey, there are four categories of it, which is knowledge-based methods, template matching, appearance-based, and feature invariant method. Knowledge-based methods use a simple human rules to define a human with two symmetrical eyes, one nose, and mouth below it. Template matching is being used to calculate the relation between the selected templates and the test image. Feature invariant will check on pose, lighting condition, and small details such as skin color, sharpness and edges of an image. Appearance-based used a technique to take a different feature from a training set. There are few of it, such as Eigenface method, neural networks by Rowley-Balaujam (1998), statistical classifiers by Schneidermann-Kanade (2000), and also adaboost. Paul Viola and Michael Jones crated a new fast and efficient method for face detection and it is quicker and more accurate than any other method. It relies on Haar simple features using Integral Image concept and using adaboost to create a fast interference.

It is using Haar like simple features, and to compensate the lighting effect under any conditions, the images must be variance normalized and mean before continuing. If P is pattern and I is an image with the same size of N X N, the feature of P image can be defined with i as :




The feature selection of adaboost aims to drive down an upper bound of an empirical loss. It does not really able to see the faces on the image but using the algorithm to calculate it instead.






How does it work?

 

Main Menu
            The first will be main menu, which is very clean and simple to use. There are only four buttons, insert photos button will ask the user to insert their image to be checked. It will show up a pop up window to choose the files that the user wanted to use. 


Pop up

            It will bring the image into the user interface on the right side of it. It will show the image as an original image before the user choose to do the face detection and face blurring. 


Original Image

            The user then can choose to do the face detection on the image that they choose from their libraries. They can also choose the one from their own library as it will work with all kind of images.


Face Detection

            It will show the user their image that have been through a face detection system and will replace and show it on the right side of the user interface.


Face Blurring

            It will show the user their image that have been through a face blurring process with the arithmetic mean function, It will replace and show it on the right side of user interface. If the user wish to, they can click the insert photos button again and start over a new image as many as they wanted to. If not, then they can go to exit button which will close all processing that is going through in the background. 




Delegation of Tasks


The task delegation in this project is equally distributed among three of use where each of us contributes and act together for the complement of the project. Here is the layout of how the task delegation is distributed:


Colin Wong Yeng Yeung 
Research on Face Detection, Graphical User Interface Design, General Body Coding, Literature Review, Blog.

Karmanov Niyazbek         
Research on Face Detection, Graphical User Interface Design, General Body Coding, Literature Review, Blog.

Andrew Hutomo Putro  
Research on Face Detection, Graphical User Interface Design & Function, General Body Coding, Literature Review, Blog, File Hosting.


Source Code



          Here is the full source code of the project. This project is done for educational purposes only and should not be plagiarized. If in the future this work can be found in any other place instead of here, please kindly contact the administrator.

You can download it here.

Take note, in order to run this program without any problem, you must run FaceDetectionandBlurringGUI.fig.

Requirements for running the code is stated below, 
  • MATLAB Software r2014a or newer version. (Original – Never use any pirated software by any means, please support the developer).
  • Point the directory in a folder or path which is recognized by MATLAB.
  • Follow the instruction of how it works.
         Initially, examples were shown in class from the lecturer and further enquiries were made to gather the insights of the topic. Most function and part of the coding can be found on Mathworks. This website is created to serve as an educational purpose only.
Below are the references that helps during the completion of the project:

Tarhini, A, (2011), “Efficient Face Detection Algorithm Using Viola Jones Method”, Accessed on 7th of November 2015, [Available] http://www.codeproject.com/Articles/85113/Efficient-Face-Detection-Algorithm-using-Viola-Jon
Viola, P, and Jones, M., J., (2004), “Robust Real-Time Face Detection” International Journal of Computer Vision, 57 (2004), pp. 137–154.[Available] http://dx.doi.org/10.1023/B:VISI.0000013087.49260.fb.
Yi-Qing, Wang, (2014), “An Analysis of the Viola-Jones Face Detection Algorithm, Image Processing On Line”, 4 (2014), pp. 128–148. [Available] http://dx.doi.org/10.5201/ipol.2014.104

Work done by :

Colin Wong Yeng Yeung [12017257]
Karmanov Niyazbek [11038247]
Laurensius Andrew Hutomo Putro [10024479]


 

Wednesday, November 18, 2015

Google Glass Explorer Edition 2

Google Glass

          
          In the advancement of technology world, wearable devices have been more and more popular. People have been using computers , phones, tablets, but they have not realize that the computer is getting smaller in form. Wearable devices have often found in form of watches, as it is a thing that people normally wear. There were a new form of wearable device, which is in form of a glasses. People will be able to use it as a normal glasses, but with a power of a computer. Google Glass has made a breakthrough, in the wearable technology world that people might not think of. Below is the new Google Glass Explorer Edition 2, which will revolutionize the wearable technology once again.
         
Google Glass
What is Google Glass?

          Google Glass is a smart glasses that will revolutionize how people use their smart devices, its magnesium body is very light and sleek which make the wearer will not even remember that the Google Glass is even there. With the glass on, people will not need any other smart devices at all. Google Glass will do all things that you need to do with your smart devices, even better than before. It will be able to make a call, reply to a message, create a new email, and all is done by voice commands. People will never miss a single date nor reminders with Google Glass, as it will keep you up to date with your schedules or agendas. If people want to go somewhere, Google Glass will be able to bring them there by its navigation system. It is just impossible to go back to the old ways after wearing the Google Glass.

Here is the Google Glass Explorer Edition 2 specifications:
  • Android OS 5.0
  • 640 X 360 Himax HX7309 LCoS display
  • 8MP camera, 1080p video recording
  • Bluetooth 4.2
  • Wi-Fi 802.11 b/g/n/ac
  • 32GB of storage
  • Intel Curie Processor
  • 4GB of RAM
  • 3 Axis gyroscope, accelerometer, and magnetometer
  •  Bone conduction audio transducer
  • Prescription frame is available
 
           Google Glass Explorer Edition 2 will be powered with Intel Curie Processor, the latest processor that Intel has just invented. This processor will bring Google Glass to its peak performances without compromising with its low power consumption technology. Intel has been serious in the wearable technology with first of its kind processor with a size of a button but more performance increases. Google Glass will be the first wearable device to use the Intel Curie Processor.

Intel Curie

Here is the specification of the Intel Curie Processor:
  • 32-bit Intel® Quark™ SE SoC
  • 384kB Flash Memory
  • Bluetooth® Low Energy
  • 6 axis sensor combination of accelerometer and gyroscope
  • Low power integrated DSP sensor hub and pattern matching technology
  • Battery Charging Circuitry (PMIC)


         Google Glass will be available in more than one frame shape, so it will be able to match your style anywhere and anytime. It will also be able to match with each and every people taste and their face shapes. Google Glass will without fail be a wearable device that is very personal, so that everyone will have their own combinations.

Frames


What can Google Glass be used for?


For business conferences, Google Glasses could mean instant conversation with people across the globe with all necessary data instantly accessible merely by looking for it. Sharing has never been easier, and suddenly, the act of pulling out a mobile phone or tab, or, God forbid, an ‘ungainly’ laptop seems so primitive, shall we say? Cumbersome, at least?

In complicated operating procedures where surgeons need to consult with each other even when not in physical proximity, a real time hands free sharing that can pull up any data and all precedents without batting an extra eyelid does seem more than promising!

Google Glasses could mean a whole new era for the next generation of travelogues, especially if you are composing it for a ready audience on one of your favorite social networking sites. It would be like having an entire film production unit accompanying you at all times. Compose with as much or as little text, video and image as you want, and invite and incorporate viewer / reader interaction all at the same time.

Imagine a distance education class where communication is instant, vivid, exceptionally informative, and as mobile as you want to make it. Do NOT, however, imagine an examination hall where Google Glasses are providing the easy way out to exam!

If you are a research student, you can spend as much time as you wish absorbing information for further analysis when you desire. It will not matter whether you are in a crowded train, or attending a boring party where, nevertheless, it would be rude to study with a tab.

Stock market enthusiasts would be able to further indulge in their passion (or obsession), or stay relaxed and spend more time with their family if they want to.

DIY projects at home need never be an annoyance again when you fail to decipher the manual. Just seek more information, or work with a live company representative.

Call Centre Tech Support employees will have less trouble explaining to their customers how to put Windows on Standby mode or how to find the USB and Ethernet Ports.