Skip to content
mattloper edited this page Sep 8, 2014 · 17 revisions
OpenDR logo

The OpenDR (or Open Differentiable Renderer) can be used for rendering and optimisation to image evidence:

  • Rendering is achieved by constructing and initialising one of the renderers available in OpenDR.
  • Optimization is achieved by minimising an objective that includes one or more renderers.

OpenDR is designed to be concise: it should not take many lines of code to construct a scene and optimize it towards image evidence. The technical details of its operation were published in the European Conference on Computer Vision in 2014.

Installation

OpenDR is currently unit-tested on OS X and Ubuntu. Instructions specific to those platforms are as follows:

Demonstration scripts

OpenDR includes sample scripts, which can be seen by typing the following:

import opendr
opendr.demo() # prints out a list of possible demos

Rendering with OpenDR

The following prints and executes the code for illuminating of a sphere mesh with one point light source. Click here for a step-by-step explanation of the code used in this demo.

import opendr
opendr.demo('point_light')

Point light demo

Optimization with OpenDR

The following prints and executes the code for optimizing a texture-mapped mesh of earth to image evidence.

import opendr
opendr.demo('optimization')

Optimization demo

Clone this wiki locally