In today’s blog post, I interview Yi Shern, a PyImageSearch reader and Machine Learning Engineer at 123RF.com, a popular stock photo website.
If you’re unfamiliar with the term, a “stock photo” is a photo taken by a professional photographer and then licensed to other individuals or companies for marketing, advertising, product development, etc.
123RF curates high quality stock photos from reputable photographers, makes them easily searchable and discoverable, and then allows users to purchase/license the photos for a reasonable price.
Recently, Yi Shern and the rest of the 123RF R&D team released a Visual Search feature on the site, enabling users to search and discover images by:
- Pinpointing/selecting specific parts of an image
- Automatically characterizing and quantifying these regions
- And then returning stock photos that are visually similar to the original query image
Their work has made it significantly easier for 123RF’s users to quickly find the perfect stock photo for their projects, making their users happier, more productive, and most importantly, repeat customers.
Let’s give a warm welcome to Yi Shern as he shares his work.
An interview with Yi Shern, Machine Learning Engineer at 123RF R&D
Adrian: Hi Yi! Thank you for doing this interview. It’s a pleasure to have you on the PyImageSearch blog.
Yi: My pleasure! Thank you for having me.
Adrian: Can you tell us a bit about yourself? Where do you work and what is your job?
Yi: I work at 123RF as a Machine Learning Engineer. As a research and development team, we work principally on problems related to computer vision and natural language processing to improve our users experience in search and discovering content.
Adrian: Can you tell us about the new computer vision and deep learning project you were involved in at 123RF?
Yi: Recently we have just released a new feature known as Visual Search on 123RF’s website, which enables our users to search and discover images by pinpointing parts of an image and get visually similar results. There are two main computer vision / deep learning component to Visual Search:
- The first component is to derive visual features regarding the input image and performing a nearest neighbor retrieval from 123RF’s entire image collection.
- The second component is our object detection component which makes Visual Search easier to use. I was mainly involved in developing this component from research to production.
Adrian: What tools and libraries do you normally use? Which ones are your favorites?
Yi: Arxiv Sanity and Twitter has been a very helpful tool to me in keeping up with the latest AI news and development.
I really like Keras as an interface to Tensorflow due to its simplicity and ease of use for research and production of machine learning models.
I’m also glad how Keras is now the central API of Tensorflow 2.0 and I believe this is a great move towards making machine learning more accessible to practitioners or researchers.
Adrian: What was your background in computer vision and deep learning before you joined the 123RF team?
Yi: I had zero knowledge and exposure in computer vision and deep learning when I was pursuing my undergraduate degree in computer science in Monash University Malaysia.
When I was studying there, the syllabus were not updated with the ongoing trend and progress so deep learning was not included in the syllabus. I did sign up for an image processing class that taught those long established traditional image processing techniques prior to the deep learning era.
Adrian: How did you first become interested in computer vision and deep learning?
Yi: I originally got started with deep learning during my undergraduate final year project which was to build a electrocardiogram (ECG) rhythm classification system.
At that time, there were a lot of buzz regarding neural networks so it seemed to me as a great opportunity to learn about neural networks and its potential to contribute to my project and healthcare in general.
My very first exposure to deep learning is through Hugo Larochelle’s MOOC together with the coding tutorials available on the TensorFlow website. Since then, it became a major passion of mine.
I went on to learn more about computer vision and deep learning through different MOOCs available for free and landed a research internship opportunity to pursue applied research and develop computer vision applications in MIMOS, Malaysia’s national applied R&D centre.
As I was approaching closer towards the completion of my undergraduate degree, I was certain that I wanted to pursue a career which allows me to study further and understand deep learning and computer vision, and that is how I ended up in 123RF.
Adrian: How did Deep Learning for Computer Vision with Python (DL4CV) prepare you/help you on your work in 123RF?
Yi: I really appreciate the wide coverage of different computer vision task by DL4CV such as image recognition, object detection, style transfer, super-resolution etc.
The material presents a very systematic flow which introduces concepts in a very clear and intuitive way, and builds up into more advanced concepts in a coherent manner.
Besides that, DL4CV goes beyond the theory and imparts very practical skills and recommendation such as working with large datasets and creating and evaluating experiments iteratively in an efficient and scientific manner. This material has been a strong influence in how I approach problems and conduct experiments in 123RF.
Adrian: Would you recommend Deep Learning for Computer Vision with Python to other developers, students, and researchers who are trying to learn computer vision and deep learning?
Yi: Definitely yes. I would recommend this book to anyone who is interested in computer vision and deep learning regardless of their experience level.
This book has done a great job in bringing clear and detailed explanations with practical walkthroughs.
Beyond that, this material is saturated with Adrian’s experience and wisdom in the field which is invaluable in itself.
Adrian: Is there any other advice you give to someone who wants to follow in your footsteps, study computer vision, and get a job in the computer vision/deep learning field?
Yi: I think having a good balance between coding and studying computer vision/deep learning literatures are both valuable skills to have to work in the field.
Thankfully, there are many open source implementations and literatures available on arXiv for us to keep up with the rapid progress.
To start with, I would suggest picking an idea that interests you and develop a project around it, this could improve your understanding of existing solutions from similar problems and your development skills as you progress in the project.
Adrian: If a PyImageSearch reader wants to chat, what is the best place to contact you?
Yi: DM me on Twitter! My handle is @yishern.
Summary
In this blog post, we interviewed Yi Shern, a Machine Learning Engineer at 123RF’s R&D department.
Recently, Shern and the rest of the 123RF R&D team released a Visual Search feature, allowing users to find stock photos using image queries rather than text queries.
This feature not only makes it easier for 123RF users to find photos, but also makes them more productive — ultimately leading to repeat customers.
If you want to follow in Yi Shern’s footsteps, be sure to pick up a copy of Deep Learning for Computer Vision with Python.
Using this book you can:
- Successfully apply deep learning and computer vision to your own projects at work
- Switch careers and obtain a CV/DL position at a respected company/organization
- Obtain the knowledge necessary to finish your MSc or PhD
- Perform research worthy of being published in reputable journals and conferences
- Complete your hobby CV/DL projects you’re hacking on over the weekend
I hope you’ll join myself, Yi Shern, and thousands of other PyImageSearch readers who have not only mastered computer vision and deep learning, but have taken that knowledge and used it to change their lives.
I’ll see you on the other side.
To be notified when future blog posts and interviews are published here on PyImageSearch, just enter your email address in the form below, and I’ll be sure to keep you in the loop.
Join the PyImageSearch Newsletter and Grab My FREE 17-page Resource Guide PDF
Enter your email address below to join the PyImageSearch Newsletter and download my FREE 17-page Resource Guide PDF on Computer Vision, OpenCV, and Deep Learning.
Comment section
Hey, Adrian Rosebrock here, author and creator of PyImageSearch. While I love hearing from readers, a couple years ago I made the tough decision to no longer offer 1:1 help over blog post comments.
At the time I was receiving 200+ emails per day and another 100+ blog post comments. I simply did not have the time to moderate and respond to them all, and the sheer volume of requests was taking a toll on me.
Instead, my goal is to do the most good for the computer vision, deep learning, and OpenCV community at large by focusing my time on authoring high-quality blog posts, tutorials, and books/courses.
If you need help learning computer vision and deep learning, I suggest you refer to my full catalog of books and courses — they have helped tens of thousands of developers, students, and researchers just like yourself learn Computer Vision, Deep Learning, and OpenCV.
Click here to browse my full catalog.