Make your own free website on

23960 BPO Way,

Rutgers University,

Piscataway, NJ - 08854

Ph. 732-762-4888


Atul Kanaujia


 A highly motivated Software Developer seeking internship as an Applied Researcher in the field of Machine Vision and Statistical learning.



Human Activity and Emotion Recognition using Graphical Models

Worked on activity recognition of human based on 2D features of silhouettes obtained from monocular video sequence. Incorporated features that could represent contextual dependencies efficiently in conditional graphical models. Worked on recognizing emotional state of an actor using hand and head movement. The state to be recognized were agitated, controlled and relaxed.      

Learning to Reconstruct 3D motion from 2D monocular view

The project involves mapping 2D motion to 3D space using statistical learning models. We use discriminative approach to model the tracking by learning mapping from 2D features to 3D poses using multimodal  probability distributions. Bayesian mixture of experts are used  to learn mappings as a set of function approximators using EM algorithm.  The densities are modeled as mixture of gaussians. Tracking was done by marginalizing densities over previous states. Responsibilites implemented

Technologies used: Maya 5.0, MFC for GUI and C++, OpenCV and OpenGL. Image processing was done in Matlab and MEX to interface with C code. Statistical Models were implemented in Matlab.


Worked on printing framework for the mentor graphics tools (front end and backend EDA Tools). Involved in high level analysis and design of the framework. The framework provided APIs to develop interface for specifying electronic design, printing to the printer, generating a preview or converting it to the PDF document. Responsibilities successfully implemented:

Technologies used: VC++(6.0), MFC, Socket programming (UNIX), PS2, HPGL/2, PCL, PJL, Rational Clearcase (IBM).

PREVIOUS RESEARCH  (COMPILERS)                                   

Performance Prediction and Micro-benchmarking
Developed tool to accurately predict the execution time of 'For loops'  in a C program. The tool used execution times of prominent time
consuming operations and  computed execution time of 'For loops'. The 'For loops' were first vectorized by finding dependences between the array references and  then used in computing the number of iterations  in each for loops.

Technical report (To be submitted): PS

Technologies used: C++, SUIF2, SKIFF workstation with SA-110 StrongARM processor, LINUX OS.


 User Level Thread Library
Implemented User Level thread library similar to POSIX PThreads. The interface functions were same as PThreads. The thread scheduling
was done by stride scheduling algorithm. The library functions included thread creation and killing routines, synchronizing routines -
mutex, condition variables and semaphores.

Distributed File Server
Implemented centralized and decentralized Distributed File Server. In centralized DFS, a central server takes all the request and
redirects to any backend server. In decentralized DFS the request can go to any of backend servers depending upon the load on each server. The servers were run on 4 different Sun Solaris machines. The servers communicated amongst themselves or with central server to replicate
frequently accessed files. The consistency was maintained by write through policy for every write request. All the communications were done using TCP.

Reliable Connection Over UDP
Implemented reliable connection over User Datagram Protocol which included adding features of TCP to UDP packets. The features like positive acknowledgement, timeout and retransmit, sequencing, duplicate detection and flow control were programmed using datagram packets.

File Replication and access optimization
Worked on Red Hat Linux 6.2 Kernel to modify IDE hard disk driver for file replication and file access optimization. The modified kernel
monitored the frequently accessed files and replicated these files. When file is accessed later, depending upon the current position of head, the head was moved to nearest file copy block.

 Gene Mining
Worked on data mining project to provide GUI to SQL queries using JAVA Swing and IBM Visual Age tool. Responsibilities implemented: 

1. Generated Relational database for the various entities and relations.
2. Wrote perl scripts to feed data into mySQL database.
3. Developed interface using Java Swing and IBM Visual Age as front end tool to generate SQL queries and OLAP queries.
4. Executing an SQL query by connecting to the database server using JDBC driver and displaying the result set.

Law Governed Interactions
Worked on LGI(Law Governed Interaction) using moses toolkit and Java clients. Clients interacted with each other by passing messages governed by PROLOG laws through controllers assigned to each client. The controller server stored the laws which had to be downloaded by the controllers. The framework simulated buying and selling of tickets between clients and vendors by bidding. Both
automatic and manual implementation was implemented using Java Swing GUI.

Web-based Library

Designed and Implemented Web based Library System. A database of all the books and journals in a library were created and all the transactions like issual, returns, maintaining user accounts, search, were carried out through web. Oracle database was used to store information about books and journals in a relational database. CGI programming was done using JDBC and Java Servlets.


Master of Science in Computer Science                                                                                                   October 2003

Rutgers, The State University of NJ

GPA:  3.7/4.0

Bachelors in Computer Science and Engineering                                                                                         May 2000

Indian Institute of Technology (IIT) - Bombay.

GPA:  8.3/10

Research Website

List of Publications

  1. Conditional Random Fields for Contextual Human Motion Recognition - Submitted to ICCV 2005
  2. Learning to Reconstruct 3D human motion using Conditional mixture of Kernel Dependency Estimators - Submitted to UAI 2005
  3. Cristian Sminchisescu, Atul Kanaujia, Zhiguo Li, Dimitris Metaxas, Learning to Reconstruct 3D Human Motion from Bayesian Mixture of Experts Accepted for CVPR 2005,[Download PDF]
  4. Cristian Sminchisescu, Atul Kanaujia, Zhiguo Li, Dimitris Metaxas, Learning to Reconstruct 3D Human Motion from Bayesian Mixture of Experts, A Probabilistic Discriminative Approach, Technical Report University of Toronto, [ Download PDF]
  5. Atul Kanaujia,  Multimodal Data and Mixture of Experts Implementation, To be submitted for Technical Report, [Download PDF]


  1. Switching Linear Dynamic Systems - [Download PPT]
  2. Multimodal Data and Mixture of Experts Implementation - [Download PPT]
  3. Learning to Reconstruct 3D poses from 2D Images using Bayesian Mixture of Experts - [Download PPT]

Past Research

  1. Atul Kanaujia, Uli Kremer, Performance Prediction of C For Loops using Micro-benchmarking,Technical Report to be submitted [Download PS]
  2. Presentations