Ex-jobb / Master's thesis
We are offering Master's Thesis work in Computer Science for the spring semester of 2022.
We have listed research subjects that are of interest to us. See list below. In you are interested in one of these subjects, please apply and let us know which subject you would like to research.
If you have a research subject of your own, that you think could be of interest to us, please apply and attach a short description of your suggestion.
Automatically adopt light and/or exposure in CGI images
Generating good-looking computer-generated images requires that the light in the scene is balanced. If you have too much light, then parts will be burned out and with too little light then the result will be too dark. This is usually done manually when generating one image at a time. But when the process is automated, and several thousand images are produced every day from rooms with different size, windows, lights, glossy and/or matt materials, and other prerequisites then this needs to be done automatically.
Beside changing the amount of light in the room (by reducing the amount of light from the windows for example), this could also be achieved by a combination of light in the room and exposure of the camera.
The master thesis consists of two parts. First to identify what parts that can be configured in a modern render pipeline with respect to lights. The second part is to implement an algorithm that automatically configures the render pipeline so that it produces images that are not too bright and not too dark.
Apply bump effects to a CGI image as a post process step
Generating high quality CGI is time consuming and typically means that all required images need to be prerendered and stored until needed. If certain aspects of the image, such as the structure of a surface (described by a bumpmap), could be updated by a fast post process instead of being rendered into the image, there would be several advantages:
- Rendering time. If images are needed for hundreds of surface structures, the brute force method of rendering one image for each structure takes a lot of time.
- Disk space. Similarly, storing hundreds of images takes space.
- Flexibility. Rendering can start before all input (surface structures) is known. Also, adding later support for additional surface structure will not require more rendering.
Questions that need answering include: What information needs to be saved from the 3D scene to make this possible in an efficient way. How could that information be stored and how would it be used to create the final image.
Automatically recognize areas that can be configurated
Image processing and recognizing objects in images has taken large steps forward during the last couple of years, partly thanks to research being done for self-driven cars. Could this be used to automatically identify the floor area of an image or the wall of an image? Would it be possible to identify objects in those areas such as chairs, tables, paintings, carpets etc? Can those objects be masked out from the image, so that you can change the images representing the wall or the floor, and then add the object back again to get a complete image?
Can an UV map be generated from the original image so that textures can be added to the wall or floor image?
Would it be possible to identify other objects that can be changed? For example, the fronts/doors on the kitchen cabinets?
Render layer images using a real time engine
Traditional offline renderers can produce images with very high quality but usually takes long time to render, but sometimes lower visual quality is good enough. How far behind are real time image renderers in generating still images? Could they produce images that are good enough in a fraction of the time of a traditional offline image pipeline? Some tradition offline renderers have added real time support that is supposed to be used when creating the object.
Analyze what options that are available and analyze what restrictions to image quality they have compared to traditional offline render pipelines.
How to express repetition in non-rectangular patterns
Draw repeatable geometric shapes that are not rectangular over a surface. How can repeatability for the patterns be expressed mathematically?
Examples of patterns:
Non rectangular sharpes - Hexagons, Weave patterns, “Axe heads”, fish scales. See https://www.stoneworld.com.au/product/tuscany/
Rectangular shapes in non-rectangular patterns - Mix of 2 or more rectangular tiles from different sizes. See https://www.emser.com/pages/tile-patterns
How to utilize the offering in the cloud to simplify the operations of an application
We host the applications for many of our customers and we always try to simplify and make best use of available services. If you are interested in the topic of hosting applications in the cloud and would like to do a thesis work about this, please contact us to discuss possible subjects.
How to use behavior data to optimize user experience (Interaction Design dept)
Investigate how to analyze user behavior to evaluate if changes made to an application are improving the application or not. For example what to measure, how to compare before-after results etc.
Investigate how to use analysis from earlier updates to automatically optimize design of future versions?