The best way to start a career is to closely study and work together with some of the best and brightest minds within your field of interest. Our summer internship is a great opportunity to get valuable, first-hand experience by working on interesting computer vision and machine learning projects.
The internship will be held in our Zagreb office for 6 weeks (between the end of August and the beginning of October). It is a full-time, financially compensated position that lets you experience what it feels like to be a part of a growing, successful company.
Choose one of the available topics and collaborate with our experienced engineers. New ideas and curiosity are always welcome – we want you to grow professionally, but also appreciate the fresh perspectives you bring to the table.
If you are a Master’s student or you’ll become one this fall, this internship was designed for you. Gain hands-on experience with the possibility of permanent employment after your graduation, and an outstanding reference for your resume.
Human motion modelling is a continuous problem in area of computer vision. Different approaches to estimating movement were made such as linear approximation, Kalman Filters (EKF and UKF), neural networks, etc. The purpose of this internship is to improve performance of an existing multiple object tracking model by adding neural network as motion model extension.
Prerequisites: Python, Machine Learning basics, neural networks
Accumulating large amount of data is hard to come by. With improvements in photo-realistic simulation using artificially generated data should be considered. This topic should investigate how the training on such data will translate to the real world. In order to do that, the idea is to generate an adequate amount of artificial data and use it to train a CNN. For evaluation of its performance, both artificial data and open-source real-world data will be used.
Prerequisites: Python, C++, computer vision basics, ML basics, CNNs
The Kalman filter is an optimal state estimator if we assume that errors have a normal (Gaussian) distribution, and the dynamic model and measurement model are both linear. The dynamic model of interest is a car, for which in every step we have a measurement from the vision camera. The dynamic model of the system is not linear which requires a nonlinear state estimation technique to be used.
The most common nonlinear state estimation algorithms are EKF (Extended Kalman Filter), UKF (Unscented Kalman Filter) and Particle Filter. The goal of this task is to compare the EKF and Particle filter state estimation accuracies. The EKF results are already available, while the particle filter implementation needs to be done to compare the mentioned results.
Prerequisites: Kalman filter, Python or C/C++
Road lane detection systems play a crucial role in the context of Advanced Driver Assistance Systems (ADASs) and autonomous driving. Such systems can lessen road accidents and increase driving safety by alerting the driver in risky traffic situations. Additionally, the detection of lanes with their left and right boundaries along with the recognition of their types is of great importance as they provide contextual information. Lane detection is a challenging problem since road conditions and illumination vary while driving.
The goal of the internship is to investigate the use of a CNN-based regression method for detecting road lane boundaries. Additionally, lane classification needs to be performed to categorize previously detected lane boundaries.
Prerequisites: ML basics, CNNs, Python, Python ML frameworks (TensorFlow, Keras)
A Car, while driving, collects disparity images from its camera (stereo or mono with CNN). The goal of this internship is to implement the algorithm that will merge disparity data from different frames to get more accurate disparity data. The algorithm will involve matching similar points and running optimization on points in the field of view. The key part of the algorithm is removing redundant points from the field of view.
Prerequisites: Expirience with basic computer vision algorithms, C/C++, Python
Visual Transformers are a fast-growing model architecture as of late in the field of Computer vision. The purpose of this internship is to train a visual transformer (or use an existing transformer available online as open source) and use it as a baseline to try and make it more efficient without hurting the performance. The focus will be on non-dense task such as image recognition to facilitate the necessary setup and simplify the reuse of open-source resources.
Prerequisites: Python (either Pytorch or Tensorflow), Deep Learning for Computer Vision (basics), Attention is All You Need article (good to have)
Pedestrian detection requires a lot of data, and the process of collecting and labeling data can be very cumbersome and time consuming. One way to address this issue is to develop a General Adversarial Network that will generate labeled pedestrian data and then add that data into training data of pedestrian detector. The purpose of this internship is to implement such a network and show that it can be used to improve pedestrian detection performance.
Prerequisites: Python, Deep Learning basics, neural networks
Acquiring enough annotated data of certain traffic scenarios is difficult (sometimes borderline impossible, e.g. a cutting in fire truck on a highway). Creating those scenarios in a simulator and rendering a realistic version of them using a CycleGAN would save a lot of trouble. CycleGANs have shown that they provide great results when trained on un-paired examples which makes them suitable here. The goal of the internship is to train a CycleGAN to render realistic images of predefined rare traffic situations.
Prerequisites: Basic ML knowledge, Basic Python ML frameworks knowledge, Some previous GAN knowledge
“During my internship, I was able to meet many great people. Every week there was a cake or something sweet in living room, you could play 8 ball pool and workout whenever you wanted. Despite all of that, everyone was working really hard. The working atmosphere is excellent! That month and a half really flew by quickly. I had a great time and learned a lot. 9 months since the internship started, I’m still part of Visage Technologies team as a student developer and I’ll soon become a full time employee. If you’re interested in autonomous driving or computer vision, I would definitely recommend this company and its internship program.”
“Last year, I worked on the topic “Learning from Image – CNN & MonoDepth” in which the ultimate goal was to develop a deep convolutional model (CNN) for depth estimation. Solving this problem was very interesting and I learned a lot. The atmosphere in office was great – working and motivating, but with fikas (coffee and cookies breaks) and billiard game breaks.”
“I would recommend the student internship at Visage Technologies to anyone interested in Research and Development as the focus of the internship is work on a research topic with a constant support of an experienced mentor. Additionally, I want to point out that the atmosphere is truly fantastic; everyone is very kind and helpful thus integrating you well in the work environment of the company.”
At Visage Technologies, we develop smart solutions powered by computer vision and machine learning. A specialized division of the company – Automotive Division – exclusively collaborates with a major automotive safety supplier, developing algorithms for ADAS (Advanced Driver Assistance System). The system detects and tracks objects such as other vehicles and pedestrians, with applications such as automatic braking, lane keeping assistance, adaptive cruise control, etc.
Visage Technologies has been among the fastest-growing technology companies since 2017. Our team keeps growing as well, so we’re often on the lookout for new colleagues.