Nanotechnology and Quantum Dot Programming

Research at McGill Involving Quantum Dots for the Independent Research Project

In a few weeks, the students in the Independent Research Project course on campus will be holding a symposium, demonstrating the hard work and effort they have put into their individual projects. As you may have noticed over the last few Bandersnatch issues, some of the amazing projects have even been highlighted here (including Shayan’s above)! In my project, alongside my partner, Nicholas Datko, we have been working on one of the projects with researchers at McGill in order to apply computer programming to the field of nanotechnology; or, specifically, quantum dots.
Imagine quantum dots as being these circular rings at the nanoscale. These rings are made of semiconductor materials, meaning that they are neither completely conductors nor resistors, but they may be chemically altered to become either one. Furthermore, when quantum dots are being discussed, they are occasionally referred to as “artificial atoms”; similar to atoms, they have discrete energy levels (basically, orbitals for those who took Chemistry) that either contain electrons or holes (which indicate that no electron is present). By providing energy and “exciting” a quantum dot, an electron within its shell can reach a higher energy level; when the dot returns to its original state, it will emit the energy it absorbed as light with a specific wavelength and frequency. Through AFM (Atomic Force Microscopy), as with other techniques, it is possible to gather images of these quantum dots for further study!
When we started the project, we were already given plenty of image samples from the AFM techniques; thus, our goal is to setup the foundation for a machine learning algorithm that can analyze these images automatically. Bear in mind, the quantum dots are nanoscopic, meaning that they are in no way visible to the naked eye, appearing as simple rings in the samples.

In brief, we are attempting to apply a technique known as a Hough transform in Python through the use of image processing algorithms within scikit-image. The first step is to take an image, render it grayscale, and detect only the edges of a given ring to remove as much noise as possible. Then, the circular Hough transform draws circles of a given radius on top of each pixel, and the most similar radius to the true ring dimensions has the greatest density of overlapping pixels. Finally, the elliptical Hough transform attempts to draw an ellipse along the edges of the ring, in which it calculates all possible major and minor axes of the ellipse and determines the most likely values.

While our time is limited to the duration of the course, the eventual goal is to optimize these methods to obtain clear and accurate results. There were basic scripts in order to achieve the Hough transforms we desired, although the results obtained were often inconsistent and relatively inaccurate. Quantum dot research is highly valuable in quantum computing and LEDs, to name a few fields, and should this research be effective, it could have a substantial impact to the nanotechnology industry as a whole.

Maxim Vitale

Originally Published in Bandersnatch Vol. 47 Issue 12 on April 11, 2018