Welcome

Portfolio


About me


My name is Lars Bergman and I recently graduated and got my Master in Media Technology/Degree of Master of Science in Engineering from Linköpings University. I am a person who loves programming, taking on challenges and learning new things. I also like 3D-modelling, Web/Game-development, Video-editing and design.

In my spare-time I enjoy being with friends, programming, playing games, going to the gym and being outside doing different activities such as skiing. Feel free to reach out to me if you got any questions. If you want to you can also download my CV below.

Contact Me


Email

Larsbergman93@gmail.com

Location

806 27 Gävle

Game of Domes


This was a project me and five other students did as part of our Bachelors degree. The aim of the project was to create a game for the dome-theater in Norrköping Visualization Centre using handheld controllers and computers.

We ended up creating a space game, where three people got different roles: Gunner, Pilot and Engineer. All of the roles depend on each other to handle the spaceship and survive for as long as possible.

At first we wanted to make the game in a 3D-engine more specifically Unity. But that wasn't possible due to us needing web-sockets which Unity charged extra for. Therefore we went along with using OSG(OpenSceneGraph) instead. We used OSG for graphics, SGCT to render our game to all the dome projectors and SmartFoxServer for the connection between the controllers and the game.

Keywords: Agile Software Development, Scrum, OpenSceneGraph, C++, 3DS-max

Close Project

Handgun


This project was made by me and Marcus Lilja for a course called "Physical interaction and game programming". We created a game using the Leap motion controller, influenced by the classic game Duck hunt.

We developed the game using Unity and programmed the game in C#. The game recognizes certain hand movements such as a spin for reloading the gun.

Keywords: Unity, Leap Motion, 2-D game

  • Watch the game in a short video below:

    Video
Close Project

Face Recognition


This project was made by myself and three others. Our goal was to use Matlab to find a face and try to match it to our database.

We made an algorithm to find and recognize faces in colored image using three main phases; color correction, face detection and face recognition. The color correction part we used a method combining white and black balancing. The face detection uses image segmentation techniques and the recognition part is based on a method called Local Phase Quantization.

Keywords: Matlab, Eigenfaces, Face recognition, Black/White balancing, Eye map, Mouth map, YCbCr and HSV color spaces, Image segmentation, Local phase quantization

  • Links to the Source code and to the report:

    Code
  • Report
Close Project

Voronoi Shattering - plugin for Maya


Plug-in created in maya by me and two more students. The plugin shatter 3D objects in a number of slices that the user can decide with a simple GUI.

We first implemented a script to check for collision between rigidbodies each frame. When it happened that two rigid bodies collide the shattering script is called upon.

Keywords: Maya, Python, Voronoi method, Shattering

Close Project

Image Reproduction


This project was made by myself for a course called "Image Reproduction and Image Quality". Using matlab I created a database of some images and then tried to reproduce a given input image using the database images.

The implementation consisted of two main scripts. The first script was to create the database which consisted of 21 images. The script is used to crop and scale the images to a certain patch size. Furthermore it stores the necessary information in arrays. The second script creates the Mosaic image by looping through all the pixel values and then compare them to all the images in the database. Then a comparison is made in the CIELAB color space for the patches to find the closest euclidean distance to replace the given pixel. After that a error diffusion is applied to further enhance the visual resemblance of the mosaic image.

Keywords: Matlab, Database, Mosaic, CIELAB, Error diffusion

  • Links to the Source code and to the report:

    Code
  • Report
Close Project

Agar AI - Q learning


Me and Kristin Bäck created an AI that learns using the Q-learning algorithm for a simplified version of the game Agar.io using Unity.

The resulting game consists of a bot that plays against another player. Where the bot successively becomes smarter and learns to adapt to the game and the player.

Keywords: Unity, Q-learning, AI, 2-D game

Close Project