Wednesday, September 13, 2006
Reunion of BCSS01 and BCSF01
Both batches attended the reunion in large numbers. Only 16 students from BCSS01 and about more than 50 students from BCSF01 attended the reunion. Great ratio, right:)
The idea was initiated by our junior microsftian Fahim, and our teachers Sir Waqar and Anzar proved to be very supportive. It was great fun meeting everyone after almost 20 months. All juniors have got a better place and few are getting higher education, that is great toooo.
The event started well and ended well. We had a fateha for our batch fellow Farhan Bhatti. Aleem shared some of his experiences with everyone while standing on a fountain :D We had a great dinner and it was something I will not forget for some time. The students of our batch who attended were:
Abdul Aleem Khan, he is currently working in Dubai sotware house (don't remember the name) as a Senior Software Engineer.
Mian Haroon Saeed, he is currently working in Techlogix as a software engineer. He also became a coder king in couple of weeks back.
Usman Qutab, he is currently working in CambridgeDocs as a software engineer. A .Net specialized boy working in Java domain from about a year.
Touseef Liaqat, he is currently working in Mentor Graphics as a software engineer. He is engaged and sooon will be married.
Yasir Mehmood, he is currently working in Innovative as a software engineer. He got married 2 days before the Reunion.
Ikhlaq Ahmed, he is going to University of Glosgow on HEC scholarship for facult development program. He will join Quetta Institute of Technology after completing his studies.
Waleed Yousaf, he is also going on 26th september 2006 for further studies. I did not get the course name and place where he is going.
Sheheryar Ilahi, he left Descon then joined some other place, and then he again joined Descon. How faithful :)
Salman Abid Jafri, he is I think in Descon. Did not get a chance to know about him completely.
Salman Hamid, he is a Human Resource Manager in Greenwich something. They conduct hiring for many big companies.
Irfan Tahir, he is doing MBA from NUST.
Tariq Yousaf, he is currently working in Systems Ltd as a software engineer in .Net team.
Moeen Ahmed, he is currently working in Systems Ltd as a software engineer in .Net team.
Najam Nazar, he is currently working in a software house (did not get the name) as a software engineer.
Dawood Nasim, he is ................ did not get the chance to ask him what he is doing :)
I hope I haven't missed anyone. I'll add them if anyone comes in my mind.
Good luck to everyone for their plans.
Dynamic Ellipse Fitting on blobs in an image
The technique to place a dynamic ellipse is as follow:
Center of Image ---> (Xi,Yi)
Center of blob -----> (Xb,Yb)
Angle for the orientation of the ellipse depends upon the distance from the center and also the location of the blob in an image, therefore
Angle--------------> 180 - ((arctan((Yb-Yi)/(Xb-Xi)))*180/Pi)
Equation of the ellipse is:
-------------------------
x^2/a^2 + y^2/b^2 = 1
-------------------------
this can be expanded to:
(Xb-Xi)^2/Rx^2 + (Yb-Yi)^2/Ry^2 = 1
=> (Xb-Xi)^2*Ry^2 + (Yb-Yi)^2*Rx^2 = Rx^2*Ry^2
where Rx = Wi/hx, Ry = Hi/hy
Wi = width of the image
Hi = height of the image
hx = ??????? (still not finalized)
hy = ??????? (still not finalized)
distance of the blob from the center of an image -> sqRoot((Yb-Yi)^2 + (Xb-Xi)^2)
this thing will be used to adjust the values of hx and hy. In this way a variable length ellipse will be
placed on the blobs in an image.
Tuesday, September 12, 2006
Teaching at PUCIT
Will discuss the contents which I covered in the course, later.
Reconnection with my blog
Thanx Aleeem
Saturday, August 26, 2006
Background Subtraction - Stauffer & Grimson's Algorithm
Since the background does not always remain constant (mainly because of light changes or continuous movement of leaves) therefore we need to develop an approach in which we update the background continuously so that minute changes in the background are made part of the background. Stauffer & Grimson’s algorithm is one of the most reliable algorithms to facilitate adaptive background subtraction.
Stauffer & Grimson Algorithm
The algorithm models each pixel with a mixture of Gaussians. At every frame, for each pixel, distance of pixel’s color value is calculated from each of the associated K Gaussian distributions. Every new pixel is checked against all existing distributions. The match is the distribution with Mahalanobis distance less than a threshold. The mean and variance of unmatched distributions remain unchanged. The matched distributions are updated by using alpha blending concept. For the unmatched pixel, the lowest weight Gaussian is replaced by the new Gaussian with mean at the new pixel and an initial estimate of covariance matrix. Then we sum up distributions less than some threshold to decide whether the current pixel is part of the background or foreground.
Reference
"Adaptive Background mixture models for real-time tracking" by Chris Stauffer and W.E.L Grimson (The Artificial Intelligence Laboratory, Massachusetts Institute of Technology)
http://www.ai.mit.edu/projects/vsam/
Overview of the algorithm is given at the following link:
http://www-staff.it.uts.edu.au/~massimo/BackgroundSubtractionReview-Piccardi.pdf
The original paper is available at the following link:
http://www.ai.mit.edu/projects/vsam/Publications/stauffer_cvpr98_track.pdf
Principal Component Analysis
PCA is an approach used for face recognition and it is also enhanced to work for gender classification and skin detection.
Basic Principles of PCA
To decompose face images into a small set of characteristic feature images called Eigenfaces, which may be thought of as the principal components of the original images. These Eigenfaces function as the orthogonal basis vectors of a linear subspace called Face Space. Recognition is performed by projecting a new face image into this face space and then comparing it position in the face space with those of known faces.
Phases of PCA
A - Initialization
Acquisition of training set of face images and calculation of Eigenfaces.
B - RecognitionGiven an image to be recognized, calculate a set of weights of M Eigenfaces by projecting it onto each of the Eigenfaces. Determine if the face image is a face at all by checking if the image is sufficiently close to the face space. If it is a face, classify the weight pattern as either a known person or as unknown. If the same unknown face is seen several times, Eigenfaces and weight patterns are updated by calculating the new face’s characteristic weight and incorporating into the known faces.
for more info:
http://en.wikipedia.org/wiki/Principal_components_analysis