Shion Fukuzawa


July 15, 2021

There is an increasing demand and interest in being able to prove that diamonds are ethically and sustainably sourced. There are several organizations working on creating effective tracking methods using cutting edge technology that combine various tools including blockchain, machine learning, and much more. I heard about this problem from my advisor Michael Goodrich who was wondering if we would be able to come up with effective algorithms to increase the accuracy and effectiveness of this process throughout various stages in the process.

There are many interesting questions to be asked about the efficacy and impact having these systems could have, which I might discuss in another post. This post will focus on the question from a purely computer science perspective.

A diamond goes through several stages before it is sold. After collecting the raw diamonds, these diamonds are sliced into half, then finally carved and polished to look like the jewel you and I are accustomed to seeing. The main role in the tracking systems is to be able to follow a diamond going through this process, and making sure that it is being processed at each stage by organizations committed to ethical and sustainably sourced diamond production.

To this end, at each stage of the process, the tracking systems take a snap shot of the diamond in the form of a 3D scan, and uploads it to the database. Having a record of these diamonds should be able to allow users to verify that the diamond didn’t switch midway through the pipeline, which could imply unverified vendors adding their products midway through the system.

Given the way current 3D scanning technology works, the results of these scanned objects is not a perfect reconstruction of the object within the computer, but usually a set of points sampled from various parts of the surface object that can approximate the scanned object. This set of points is called a point cloud. Usually, our eyes can process these points and effectively perceive what shape these points form, but it’s not easy to get a computer to understand the point cloud in the way that we do.

So now we know that the objects we will be handling in this problem are massive amounts of point clouds of diamonds at various stages. Given these objects, some of the key questions we are interested in exploring are:

I’ll use this platform to summarize some concepts I learn along the way that might be useful in tackling some of these problems, and hopefully have some updates in the future on any successes!