Hello, this is Oguzhan!
I am a Computer Vision Engineer at the Dynamic Object Detection team of Zenseact AB, Sweden,
developing AI models and solving practical challenges for autonomous driving. Our vision is to reduce car accidents to zero.
Besides my experience in 3-D object detection using LIDAR and camera, I am particulary interested in text-to-image models,
as I find them quite promising due to their unlimited potential from generating personalized contents
to simulation generation, where different learning models can be trained before they are
exposed to the real-world data in critical applications like autonomous driving.
If you think we can work together, please contact me at the Contact section or follow the link to my LinkedIn profile.
Bilkent University
Sep 2018 - Sep 2021Budapest University of Technology and Economics
Sep 2015 - Jun 2016Marmara University
Sep 2014 - Jun 2018Zenseact AB
Nov 2022 - PresentFord Otosan
Feb 2021 - Nov 2022CERN ⁃ European Organization for Nuclear Research
Jun 2019 - Jun 2020Bosch
May 2017 - Jul 2018Here you may find some of my work I've done during my master's classes. I explained my reasonings along with the code in dedicated Jupyter Notebooks, therefore you can have a picture of my approach against some specific problems.
Task: Given an image, cluster image pixels using partitional and hierarchical clustering algorithms.
In this project, I have implemented k-means and agglomerative clustering algorithms
from scratch using only the Numpy library.
Tags: Numpy, Clustering, Vision
Check out my code and documentation at Jupyter notebook:
Task: Design and implement a genetic algorithm based approach for cost sensitive learning,
in which the misclassification cost is considered together with the cost of feature extraction.
I have implemented a genetic algorithm from scratch using only the Numpy library.
The most critical part of this task was formulating the fitness function that would guide the genetic algorithm.
I defined a fitness function, which aims to suppress the feature extraction cost while increasing the class-based accuracies and the overall accuracy.
For classification, I employed SVM due to its deterministic characteristic that helped me to further fine-tune my fitness function.
Tags: Numpy, Genetic Algorithms, SVM, Cost-sensitive Learning, Imbalanced Data
Check out my code and documentation at Jupyter notebook:
Task: Develop an intelligent image analysis tool to enable the automated diagnosis of 7 different skin cancer types from dermoscopic images.
Main challenges of the dataset that it was highly imbalanced and contained insufficient data to train a deep network.
I had to come up with several solutions against these such as image augmentation and transfer learning in order to train a deep
convolutional neural network properly.
Tags: Keras, Vision, Image Augmentation, Transfer Learning, Classification
Check out my code and documentation at Jupyter notebook:
Task: Design and train a deep age estimation network that will accurately predict age of people from their 91x91 facial grayscale images.
Completed in group of two for Deep Learning class. Basically, experimented with different parameters and network architectures including residual blocks.
Concluded that a simpler CNN would do the job well after analyzing the dataset provided, in which the faces were aligned and normalized.
Each design step has been explained in the notebook.
Tags: Tensorflow, Vision, Regression
Check out my code and documentation at Jupyter notebook:
Task: Implement the Expectation-Maximization algorithm for different Gaussian Mixture Models.
Train a Bayesian classifier where each class-conditional probability density is estimated using these mixture of Gaussians.
Also implement a Bayesian classifier where the class-conditional probabilities are estimated using histograms and compare them
with the previous approach.
Tags: Numpy, Gaussian Mixture Model, Bayesian Classification, Histograms
Check out my code and documentation at Jupyter notebook:
Task: Swap genders of males and females using an unpaired dataset.
CycleGAN is one of the best GAN variations in my opinion, enabling us to learn different domain distributions for image-to-image transfer applications
from the unpaired datasets.
Tags: PyTorch, Generative Adversarial Networks, GAN, Image-to-image Translation, Unpaired Data
Check out my code and documentation at Jupyter notebook: