Coder Social home page Coder Social logo

oradzhabov / fakeface Goto Github PK

View Code? Open in Web Editor NEW
46.0 7.0 15.0 89.48 MB

Research project for testing the techniques of processing the human face images via the real-time video streaming

CMake 0.46% Batchfile 0.01% C++ 97.34% C 2.00% Objective-C 0.18%
video-stream dlib directshow fakeface opencv virtual-camera

fakeface's Introduction

FakeFace

Research project for testing the techniques of processing the human face images via the real-time video streaming.

It uses DirectShow filters for grabing video frames from real camera device, processing them and passing to the virtual camera.

During processing of frames it uses dlib or parts of OpenFace to putting any human face from image to corresponded face on the frame.

Alt text

Minimum Requirements

  • Windows OS (x86 & x64)
  • Microsoft Visual Studio 2010

Dependencies

OpenCV

dlib

  • web: http://dlib.net/
  • github: https://github.com/davisking/dlib
  • notes:
    1. dlib should not be just compiled but installed. Hence in my case, when I point dlib to install in local folder, I have next path for cmake entry dlib_DIR D:/DLIB/dlib-18.18/build/msvc2010.x32/install/lib/cmake/dlib
    2. I've used dlib 18.18

boost

Microsoft Windows SDK

Build

Use only release target

Prepare

Register new virtual camera

  • Run FAR or CMD with Administrator permissions
  • Point to folder where file VirtualCamDevice.dll has been built
  • During building there are several files has been copied to the same folder
  • Run file install.bat
  • If no errors occured during registration system will inform about it twice (actually 2 files will be registered)

Unregister virtual camera

  • If you do not want to continue using the virtual camera, run file uninstall.bat from the folder where file VirtualCamDevice.dll has been built
  • Ensure that no applications (GraphStudio, Skype, Hangout or else) do not use virtual camera. Otherwise it will not uninstall it

Run

  • Ensure that no application uses your real web-camera device. Otherwise it could not be stated as imput source for FakeFace
  • Run file VirtualCameraManager.exe
  • After several seconds FakeFace manager window will apear
  • From this moment you can use FakeFace

Using Cases

GraphStudio

  • For testing purposes I use Graphstudio (http://blog.monogram.sk/janos/2009/06/14/monogram-graphstudio-0320/)
  • Notice that if you build FakeFace for x64 platform, use GraphStudio64 instead of GraphStudio
  • Download and run it. Open project "./data/MONOGRAM GraphStudio/FakeFace Virtual Cam.grf"
  • This project connect virtual camera (registered before) and renderer
  • Start the graph
  • If you did not start VirtualCamManager, renderer will show noisy pixels
  • If VirtualCamManager has been started before, you will see your web-camera stream where your face will be switched to face of Vasyl Lomachenko - default fake face
  • Pick to the FakeFace Manager window and press "S"-button on the keyboard
  • OpenFile dialog will appear. Choose some file with human face photo
  • After moment your face on the GraphStudio renderer will changed to that which imaged on the selected file

Skype

  • Make sure that the destination platform of the installed version of Skype corresponds to the build destination platform of FakeFace
  • If you wish to use FakeFace with Skype, you need to register virtual camera when Skype is turned off. Remember that virtual camera should be registered when no one application use your real camera device
  • After virtual camera has been registered, VirtualCamManager has been started and Skype has been stared pick Skype menu: Tools >> Options >> Video settings
  • Your default camera will not be available
  • On the panel "Video settings" select webcam: "FakeFace Virtual Cam"
  • Enjoy

Tips

  • Avoid back lighting. Set light direction frontal to face
  • Use clothes that cover your neck. Color of your face shold not interfere with color of neck as background color

fakeface's People

Contributors

oradzhabov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

fakeface's Issues

Trying to compile VirtualCamManager

Hi,
I'm trying to compile the code and face this issue and I'm not sure how to deal with it .

got an error 2

What did I miss ? (I linked dlib , opencv and boost and they work )

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.