Giter Club home page Giter Club logo

hdr4eu's Introduction

H2020 HDR4EU Project

HDR4EU is a EU project related to HDR data. This repository contains a set of web-tools, libraries and fileformat descriptions developed by the GTI group from Universitat Pompeu Fabra to tackle existing problems of using HDR images on the web.

More specifically, in this repository you will find a web-tool renderer which can achieve photorealistic results and match real lighting conditions taking advantage of the use of image-based HDR lighting. For this purpose, we have determined the environment file format used, called hdre. It is a binary representation of an OpenEXR light-probe file along its prefiltered levels of roughness. The HDR engine of the renderer itself is responsible of parsing and generating HDRE files for later public consumption. To display images in the screen range we work with different web-implemented tone-mapping algorithms.

alt text

It also includes a set of tools on the web to extract the environmental light from LDR images of different expossures, and to generate an HDR light probe information object, so it can be used to render a scene with the setting and light complexity of a realistic environment using PBR rendering techniques. It only takes a couple of minutes to render a 3D model with the lighting information of a real environment stored in LDR images.

alt text

We have also created a HDRE repository that will store all the created and assembled (from LDRs) 3D envorironments. It will be available for everyone for browsing, downloading and testing any file on the application. In case of uploading files, a completely free registration will be necessary.

The application makes use of different 3D render web-libraries as rendeer.js, litescene.js or litegl.js. All of them created in the UPF-GTI by Javi Agenjo (@jagenjo) for the project WebGlStudio. In that context, this application has been complemented with many 3D tools to create and manipulate 3D scenes. Additionally, UPF-GTI has developed for this project a section for generating simple virtual studios using Chroma Keying algorithms, completely on the web.

The application can be tested here, where you will find an index with:

    - The stable version of the HDR4EU application
    - The latest version, with new features (and probably more bugs!)
    - The HDRE repository (HDR environmental images for image-based lighting using PBR) 
    - A link to this GitHub repo

Installation

There's no installation needed!

Usage

  • Create HDRE file:

Drag and OpenEXR file to the canvas and select the cubemap's face size. When the generation completes, you will find the section Actions - Export - Environment in the menu bar.

  • Add 3D objects to the scene:

Execute right mouse click at the canvas and you will have the option to add application default models to the scene or add only mesh primitives (spheres, cubes and planes). It is also possible to drag 3D models with its PBR textures to the application to render them. The meshes could come as:

    - Wavefront (.obj)
    - Collada (.dae)
  • Chroma Keying:

The Chroma has been developed in this application as a 3D scene node component. It can be added to any of them by selecting Add node component - ChromaKey in the node inspector. The chroma lighting has been generated using both point lights and environment lighting. Our algorithm can generate some fake orientation information (normalmap) based on the color information of the image, which can help improve the quality of the image and integrate it better with the surroundings.

This component could be used also with a webcam as the texture color for the chroma.

  • Assemble HDR images from LDR to create HDR environments in HDRE format:

Drag each of the LDR images (up to 9 images) at the canvas in the Assembly navigation tab. When ready, click Assemble button and you will be able to crop the image and tune some tone-mapping parameters. Last step is to Export and test in the application.

alt text

Examples of rendered scenes

alt text alt text alt text

hdr4eu's People

Contributors

h3r avatar jagenjo avatar jxarco avatar mariabosser avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.