Skip to content

haochen-zhang/3D-Face-Modeling

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

3D-Face-Modeling

A vanilla 3D face modeling on pose-invariant and multi-lightning image data

Table of Contents

  • Background
  • Install
  • Usage
  • Contributing

Background

The project tries to restore surface normal and albedo information based on pose-invariant and multi-lightning image data, then use them to rebuild the 3d face model.

face_08

Test Data

image

Recovered Surface

Install

This project is implemented with Google Colab. Please download all the files and upload them into your own Google Drive project folder and then open it.

Usage

First, load images

# load images as intensity matrix at each pixel
imstack = []
for i in range(1, 8):
  imstack.append((cv2.imread(Images path, cv2.IMREAD_GRAYSCALE)).flatten())
imstack = np.vstack(imstack)

Second, define data light

# load light source vector S
S = pickle.load(open('./data/sources.pickle', 'rb'))['S']

Contributing

The project's recover surface function is credited to Todd Zickler, CS283, Harvard University.

About

A vanilla 3D face modeling on pose-invariant and multi-lightning image data

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published