November Seminars


Plant Seed Identification

By Xin Yi, PhD Candidate

Abstract: Plant seed identification is routinely performed for seed and phytosanitary certifications for import and export of weeds regulatory monitoring, surveillance, and enforcement. Current identification is performed manually by seed analysts with limited aiding tools. Extensive expertise and time is required, especially for small, morphologically similar seeds. Computers are, however, especially good at recognizing subtle differences that humans find difficult to perceive.

In this thesis, a 2D, image-based computer-assisted approach is proposed by using a scale-wise pooling feature representation based on the traditional bag-of-words model. In addition, because of the defocus blur casted on every single microscopic image frame of plant seeds, it is necessary and beneficial to differentiate the in-focus and blurred regions. If the object-of-interest, the plant seed in this case, is in-focus under a single image frame, the amount of defocus blur can be employed as a cue to separate the object and the cluttered background. If the defocus blur is too strong to obscure the object itself, sharp regions of multiple image frames acquired at different focal distance should be merged together to make an all-in-focus image. This thesis describes a novel non-reference sharpness metric which exploits the distribution difference of uniform local binary patterns (LBP) in blurred and non-blurred image regions. It runs in realtime on a single core cpu and responses much better on low contrast sharp regions. Its benefits are shown both in defocus segmentation and focal stacking.

The very first digital seed identification tool of its kind was built and deployed for test in the seed laboratory of Canadian food inspection agency (CFIA). Scale-wise pooling feature representation was used in this tool as the image signature. The proposed focal stacking algorithm was employed to create all-in-focus images. Throughput, workload, and identification rate were evaluated and participants reported significantly lower mental demand when using the provided tool compared with manual identification. Although the identification rate in practical test is not good enough, I have demonstrated common mistakes that have been made in the imaging process and possible ways to deploy the tool to achieve sufficiently high recognition rate.

Biography: Xin Yi is a PhD candidate in the Department of Computer Science at the University of Saskatchewan. He received his master's degrees in Control Theory and Control Engineering in 2012 from Northwestern Polytechnical University (NWPU), China. His current research interests are in the area of image processing, object recognition, and machine learning.

Monday, November 21, 2016 @ 2:30 pm in Arts, Room 146


Analyzing Clone Evolution for Identifying the Important Clones for Management

By Manishankar Mondal, PhD Candidate

Abstract: Code clones (identical or nearly similar code fragments in a code-base) have dual but contradictory impacts (i.e., both positive and negative impacts) on the evolution and maintenance of a software system. Because of the negative impacts (such as high change-proneness, bug-proneness, and unintentional inconsistencies), code clones are considered the number one bad-smell in a code-base. Researchers suggest managing code clones through refactoring and tracking. However, a software system's code-base may contain a huge number of code clones, and it is impractical to consider all these clones for refactoring or tracking. In these circumstances, it is essential to identify code clones that can be considered important for refactoring and tracking. However, none of the existing studies investigated this matter. We conduct our research emphasizing this matter, and perform five studies on identifying important clones by analyzing clone evolution history. On the basis of our studies we develop an automatic system called AMIC (Automatic Mining of Important Clones) that not only identifies the important clones for management (refactoring and tracking) but also ranks these clones considering their evolutionary coupling, and bug-proneness.

Given all the revisions of a particular software system, AMIC examines the evolution of all major types of code clones residing in that system, and identifies those clones that evolved following a particular change pattern called Similarity Preserving Change Pattern (SPCP). It then separates the SPCP clones (the code clones that evolved following an SPCP) into two disjoint subsets on the basis of their evolutionary coupling. While the clones in one subset are most important for refactoring, the code clones in the other subset are important for tracking. We believe that AMIC has the potential to assist clone management by pin-pointing the important clones for management, and thus, considerably minimizing clone management effort.

 

Biography: Manishankar Mondal is a PhD candidate in the Computer Science Department of the University of Saskatchewan. He also received his master's degree from the same department. He has conducted his research in the field of software engineering, especially in software maintenance and evolution. During his PhD studies he has published 16 peer reviewed papers in the reputed software engineering conferences and journals. He is a faculty member in the Computer Science and Engineering Discipline of Khulna University, Bangladesh. Currently, he is on study leave.

Friday, November 25, 2016 @ 2:30 pm in Thorvaldson 105