Software Development Projects
(1992-2005)
Date: May 22, 2005
Kyungnam
Kim,
Computer Science Department,
This
document presents the software projects which I developed 100% or I had
involved in as a team member. It
also details development languages used, period, contractor, etc. Some projects involve hardware
development. Most software programs
are operated on Microsoft Windows. The list below describes my technical skills
related:
TECHNICAL SKILLS |
|
¡¤
Computer languages and platforms: Visual C/C++, MATLAB, Visual Basic,
Borland Delphi, LISP, Fortran, Pascal, HTML, x86 Assembler, PVM, Unix, Linux,
MS-Windows. ¡¤
Hardware design: pASIC,
QuickLogic, VHDL, Verilog,
Synthesis/Simulation tool, Z80 microprocessor. ¡¤
Image processing, vision, graphics: MATLAB, Mathematica,
IDL, SGRP, OpenGL, several commercial and free toolkits. ¡¤
Multimedia packages: Multimedia Toolbook,
Authorware, Flash, Premiere, Photoshop. |
Contents
1.
UMD-BGS (University of
MarylanD BackGround Subtraction Program)
2.
Perturbation Detection Rate
(PDR) Analysis Program
3.
NASA Crew Performance
Analyzer
4.
Multi-camera
Tracking of Occluded People
5.
Video Quality
Measurement Program
9.
EyeTalk – Multimodal Human-Computer
Interface
11.
Eye Tracking
12.
Parallel Programming
of Vision Algorithms on PVM
13.
CAD Tool for
Block Interlocking
14.
Image Database for
Electricity Facility
15.
Personal
Information Management System – Samsung Electronics
16.
Personal Information
Management System – SunJin Fleet Co.
17.
Database for Water
Supply Facility
19.
Internet Guide for
Dummies
20.
Tour Guide for
Department Visitors
21.
Other Projects
22.
My logo artwork
UMD-BGS,
|
Goal |
This background subtraction (BGS)
program processes input video data captured from a static single camera to generate foreground/background binary
image outputs. Our codebook background subtraction algorithm has
these key functions - (i) fast and compact background modeling by a vector
quantization technique, (ii) temporal filtering allowing foregrounds in the
training period, (iii) a unique color model separating color and brightness
evaluation efficiently, (iv) multiple background layers to handle background
changes. |
|
Start/End
date |
Aug 2001 – Aug 2004 (3 years
development period) |
|
My contribution |
80% of 30,000 lines of codes,
Algorithms |
|
Language(Library) |
Visual C/C++ (MFC, DirectShow,
VisionSDK) |
|
Platform |
MS Windows |
|
Features |
Inputs can be live video (from any camera accepted
by DirectShow, i.e., IEEE1394, USB camera, etc) , video files
(*.avi, *.mpg, etc), or a sequence of
image files (*.bmp, *.jpg, *.gif, *.ppm) Processing speed:
almost 30 fps w/o post-processing Setting of parameters
and post-processing options, Diagnostic displays, Event log, Binary detection
images |
|
Customer/User |
UMD students, many people in
computer vision research/industry communities |
|
Remark |
More details and
download at http://www.umiacs.umd.edu/~knkim/UMD-BGS/index.html Related publication: K. Kim, T. H. Chalidabhongse, D. Harwood and L. Davis, "Real-time Foreground-Background Segmentation using
Codebook Model", Elsevier Real-Time Imaging 2005. |
Main control program and parameter setting

Examples


Perturbation Detection Rate (PDR)
Analysis Program
|
Goal |
The
program is a comparison platform for detection algorithms. It generates a
text file containing detection rates which can be converted to a PDR graph. A
performance evaluation method using perturbation analysis (called
Perturbation Detection Rate analysis) is proposed. It measures the sensitivity of a
background subtraction algorithm in detecting low contrast targets against
background as a function of contrast. It could be used as an alternative of
ROC. |
|
Start/End
date |
Sep. 2002 – Feb. 2003 (6 months
development period) |
|
My
contribution |
60% of 20,000 lines of codes |
|
Language(Library) |
Visual C/C++ |
|
Platform |
MS Windows |
|
Features |
Comparison of 4 detection
algorithms by adjusting parameters and simulation options |
|
Customer/User |
Internal use only |
|
Remark |
Related publication: K. Kim, T. H.
Chalidabhongse, D. Harwood and L. Davis, "PDR:
Performance Evaluation Method for Foreground-Background Segmentation",
submitted to EURASIP Journal on Applied
Signal Processing. |
Main control program and an example frame

Graph generation


NASA Crew Performance Analyzer
|
Goal |
This project is to track NASA
crew in the space shuttle and to analyze their motions, postures, etc. The
ultimate goal of this project is to find out their cognitive states and to
help designing shuttle interfaces, etc in ergonomics-view. (2001-2002) |
|
Start/End
date |
2001 – 2002 (1 year development
period) |
|
My
contribution |
30% of 20,000 lines of codes |
|
Language(Library) |
Visual C/C++ |
|
Platform |
MS Windows |
|
Features |
|
|
Customer/User |
Foster-Miller Inc. (a NASA
sub-contractor) |
|
Remark |
We used our background
subtraction program for this application |
Main control program and an example frame

Multi-camera Tracking of Occluded
People
|
Goal |
Tracking and segmentation of occluded
people using multiple overlapped views. |
|
Start/End
date |
Nov. 2004 – Jul. 2005, (9 months
development period) |
|
My
contribution |
100% of 5,000 lines of codes |
|
Language(Library) |
MATLAB |
|
Platform |
MS Windows |
|
Features |
Here, an appearance model is
created when an individual is detected without occlusion. The appearance
model is a color density as a function of height since a human's appearance
mostly changes along its height.
We assume that this model is good for each view (even though each
camera's output for the same real-world object is slightly different). Given
the appearance model, the prior location, and occlusion information, we
classify each pixel into the best-matched person class using Bayesian rules
(maximum likelihood). In addition
to appearance, a ground homography is used for resolving the correspondence
of each person between views. |
|
Customer/User |
|
|
Remark |
Publication under preparation |
Example frames

Video Quality Measurement Program
|
Goal |
|
|
Start/End
date |
Nov. 2003 – Jan. 2004, (3 months
development period) |
|
My
contribution |
100% of 2,000 lines of codes |
|
Language(Library) |
MATLAB |
|
Platform |
MS Windows |
|
Features |
Q1 – noise: due to sensor
sensitivity, electronic transmission, illumination fluctuation, camera
vibration, etc
Q2 – contrast: affected by
camera optics, resolution, etc
Q3 – color information: how well
color values are distributed over the intensity range (entropy). Q4 – clipping: pixels brighter or darker than the representation bounds (ex,
[0,255]) are clipped. |
|
Customer/User |
Internal use only |
|
Remark |
Related publication: K. Kim, and L.
Davis, "A Fine-Structure Image/Video Quality
using Local Statistics" IEEE International Conference on Image
Processing (ICIP) 2004 |

|
Goal |
Developed a face animation system. |
|
Start/End
date |
Sep. 2000 – Dec. 2000, (4 months
development period) |
|
My
contribution |
100% of 10,000 lines of codes |
|
Language(Library) |
Visual C/C++ (OpenGL) |
|
Platform |
MS Windows |
|
Features |
It can automatically, in
real-time, animate facial feature movements such as eye-lid blinking, mouth
opening/closing, and head rotation (roll, yaw, pitch) by visual tracking on
the facial features from live video. |
|
Customer/User |
|
|
Remark |
Course Project – ¡°Advanced
Computer Graphics¡± |
Example

Head rotation (roll, yaw,
pitch)

mouth opening/closing

Eyeball movement

|
Goal |
Implemented a face recognition
system based on Eigenfaces papers using MATLAB and tested on the face
database from AT&T Lab at |
|
Start/End
date |
Sep. 2001 – Dec. 2001, (4 months
development period) |
|
My
contribution |
100% of 1,000 lines of codes |
|
Language(Library) |
MATLAB |
|
Platform |
MS Windows |
|
Features |
|
|
Customer/User |
|
|
Remark |
Course Project – ¡°Numerical
Analysis I¡± |
Example recognition and
Eigenfaces

|
Goal |
Implemented an object tracking
software for USB cameras. |
|
Start/End
date |
Jan. 2001 – Feb. 2001, (2 months
development period) |
|
My
contribution |
100% of 2,000 lines of codes |
|
Language(Library) |
Visual C/C++ (DirectShow) |
|
Platform |
MS Windows |
|
Features |
Tracking an object in motion. This
is not for multi-target tracking |
|
Customer/User |
A private venture company |
|
Remark |
$5,000 contract |
Example frames



EyeTalk – Multimodal Human-Computer
Interface
|
Goal |
The goal is to build a multimodal
human-computer interface integrating face tracking, eye-gaze estimation,
lip-reading, and speech recognition technologies. Multimodal Human-Computer Interaction (HCI) combines natural
input modes. It benefits from novel HCI modalities and from multimodal
integration for tackling the problem of the HCI bottleneck. EyeTalk was a funded project to
build a car navigation system in which our multimodal interface is embedded. |
|
Start/End
date |
Feb. 1999 – Jun. 2000, (1.5 years
development period) |
|
My
contribution |
40% of 30,000 lines of codes, a project leader/coordinator of 7
developers |
|
Language(Library) |
Visual C/C++ (Matrox library, HMM
toolkit, Windows multimedia library) |
|
Platform |
MS Windows |
|
Features |
Multithread programming Source & version control Source code documentation
|
|
Customer/User |
A government-industry sponsored
project ( |
|
Remark |
My
responsibility was coordinating regular meetings, assigning work-loads to
each member, integrating each component into a single working system, and
maintaining publications. |
System in working


User Command Control
Panel


System Overview

|
Goal |
In Facial Feature Tracking,
a robust, fast, and cheap scheme for locating the eyes, lip-corners, and
nostrils is proposed. Head orientation-based gaze tracking is one of possible
applications. |
|
Start/End
date |
Feb. 1999 – Jan. 2000, (1 year
development period) |
|
My
contribution |
30% of 10,000 lines of codes |
|
Language(Library) |
Visual C/C++ (Matrox & Coreco libraries) |
|
Platform |
MS Windows |
|
Features |
|
|
Customer/User |
|
|
Remark |
5 frame per second speed |
Example

|
Goal |
Eye Tracking addresses the
development of image processing algorithms for locating and tracking facial
features, especially iris boundary (limbus). Occluded circular edge matching
algorithm has been developed and tested. |
|
Start/End
date |
Mar. 1998 – Feb 1999, (1 year
development period) |
|
My
contribution |
100% of 7,000 lines of codes |
|
Language(Library) |
Visual C/C++ (Matrox library) |
|
Platform |
MS Windows |
|
Features |
|
|
Customer/User |
|
|
Remark |
5 fps speed |
Example


Parallel Programming of Vision
Algorithms on PVM
|
Goal |
Parallel Computing for
Vision addresses the problem of accelerating the operations or jobs of
computer vision and image processing. PVM, which I have used, is one of the
most popular platforms for parallel computing. |
|
Start/End
date |
Sep. 1997 – Feb 1998, (6 months
development period) |
|
My
contribution |
100% of 7,000 lines of codes |
|
Language(Library) |
Ansi C (PVM - Parallel Virtual
Machine) |
|
Platform |
UNIX |
|
Features |
A cluster of 5 different
heterogeneous unix workstations |
|
Customer/User |
|
|
Remark |
Computer
Vision tasks are very computationally intensive. Therefore their
computations should be parallelized properly for high performance. Using
existing resources, Parallel Vision
Environment is built based on PVM over the heterogeneous networked
workstations |
System Overview

CAD Tool for Block Interlocking
|
Goal |
It is a computer-aided design tool
for the industry of concrete block interlocking. It lets a user draw blocks with
different allowable interlocking options. |
|
Start/End
date |
Sep. 1995 – Feb 1996, (6 months
development period) |
|
My
contribution |
100% of 10,000 lines of codes |
|
Language(Library) |
Borland Delphi |
|
Platform |
MS Windows |
|
Features |
Zoom in/out, Copy and
paste, Printing, Auto-counting of the
number of blocks for each color Database: load and save
user¡¯s designs of block interlocking |
|
Customer/User |
Daeyang Concrete Co. LTD., |
|
Remark |
$10,000 contract |
Snapshot

Program Starting Logo


Database
Image Database for Electricity
Facility
|
Goal |
It is an assisting tool for the
facility management team in Korea Electric Power Corporation, the only
corporation handling electricity in |
|
Start/End
date |
Mar. 1995 – Aug. 1996, (6 months
development period) |
|
My
contribution |
100% of 8,000 lines of codes |
|
Language(Library) |
Visual Basic |
|
Platform |
MS Windows |
|
Features |
Capturing from digital
cameras and video camcorders Comprehensive database
of electricity facility |
|
Customer/User |
Korea Electric Power Corporation
(KEPCO), |
|
Remark |
$30,000 contract |
Snapshot

Personal Information Management
System – Samsung Electronics
|
Goal |
A personal information management
system was developed for Samsung Electronics Pusan Branch. |
|
Start/End
date |
Mar. 1995 – Aug. 1996, (6 months
development period) |
|
My
contribution |
100% of 7,000 lines of codes |
|
Language(Library) |
Visual Basic |
|
Platform |
MS Windows |
|
Features |
User mode VS.
Administrator mode Formatted printing |
|
Customer/User |
Samsung Electronics |
|
Remark |
|
Snapshot

Personal
Information Management System – SunJin Fleet Co.
|
Goal |
A personal information management
system was developed for SunJin Fleet Co.. |
|
Start/End
date |
Aug. 1995 – Nov. 1995, (4 months
development period) |
|
My
contribution |
100% of 8,000 lines of codes |
|
Language(Library) |
Borland Delphi |
|
Platform |
MS Windows |
|
Features |
Sailors¡¯ personal information management |
|
Customer/User |
SunJin Fleet Co., |
|
Remark |
$5,000 contract |
Snapshot

Database for Water Supply Facility
|
Goal |
It is an assisting tool for management
of water supply facility. |
|
Start/End
date |
Aug. 1995 – Nov. 1995, (4 months
development period) |
|
My
contribution |
100% of 6,000 lines of codes |
|
Language(Library) |
Visual Basic |
|
Platform |
MS Windows |
|
Features |
Image data from a
scanner Water supply management
– damage, repair reporting |
|
Customer/User |
|
|
Remark |
|
Snapshot

|
Goal |
I developed a tool for score
displaying to be used on a TV show program. |
|
Start/End
date |
Aug. 1995 – Nov. 1995, (4 months
development period) |
|
My
contribution |
100% of 1,000 lines of codes |
|
Language(Library) |
Visual Basic, Photoshop |
|
Platform |
MS Windows |
|
Features |
The artwork was also created by myself |
|
Customer/User |
Pusan Broadcast Co. LTD., |
|
Remark |
$1,500 contract |
Snapshot

|
Goal |
Multimedia contents of
introduction to Internet for beginners |
|
Start/End
date |
May. 1995 – Aug. 1995, (4 months
development period) |
|
My
contribution |
100% of 300 lines of codes |
|
Language(Library) |
Authorware, Photoshop |
|
Platform |
MS Windows |
|
Features |
The first Internet education content at the early age of
Internet boom. |
|
Customer/User |
|
|
Remark |
Personal project |
Snapshot

Tour Guide for Department Visitors
|
Goal |
It is a tour guide for department
visitors, which contains introduction to the department. |
|
Start/End
date |
Sep. 1996 – Feb. 1997, (6 months
development period) |
|
My
contribution |
100% of 500 lines of codes |
|
Language(Library) |
ToolBook, Photoshop |
|
Platform |
MS Windows |
|
Features |
|
|
Customer/User |
|
|
Remark |
Undergraduate project |
Snapshot



|
Title |
8-bit CPU design and simulation using VHDL and QLogic
tools |
|
Start/End
date |
Mar. 1996 – Feb. 1997, (1 year
development period) |
|
My
contribution |
30% of 500 lines of codes |
|
Language(Library) |
VHDL, Verilog, pASIC tools |
|
Platform |
MS Windows, Hardware (Bread boards,
etc) |
|
Features |
Simulation on a real chip after layout |
|
Customer/User |
|
|
Remark |
Undergraduate project |
|
Title |
Client/server chatting software using OLE technology |
|
Start/End
date |
Sep. 1996 – Feb. 1997, (6 months
development period) |
|
My
contribution |
100% of 200 lines of codes |
|
Language(Library) |
Visual Basic (OLE) |
|
Platform |
MS Windows |
|
Features |
Client/server model of chatting, working over network |
|
Customer/User |
|
|
Remark |
Undergraduate project |
|
Title |
Mini operating system with boot-up function |
|
Start/End
date |
Sep. 1994 – Feb. 1995, (6 months
development period) |
|
My
contribution |
100% of 200 lines of codes |
|
Language(Library) |
Assembly |
|
Platform |
Mini OS which I developed |
|
Features |
Bootable, cursor, time/date, |
|
Customer/User |
|
|
Remark |
Undergraduate project |
|
Title |
Geographic Information System for |
|
Start/End
date |
Sep. 1996 – Feb. 1997, (6 months
development period) |
|
My
contribution |
100% of 500 lines of codes |
|
Language(Library) |
Visual Basic |
|
Platform |
MS Windows |
|
Features |
Map viewing, Location registration, etc. |
|
Customer/User |
|
|
Remark |
Undergraduate project |
My
logo artwork for Ultra fast optical network center and Samsung software associate






