Question: Use Matlab or Python for the implementation. Thanks! Take a photo of your hand under ideal conditions, to capture correctly all shape details/proportions; think: surface/background,


Use Matlab or Python for the implementation. Thanks!
Take a photo of your hand under "ideal" conditions, to capture correctly all shape details/proportions; think: surface/background, lighting, off-plane rotations, percentage of hand region with respect to the overall image. Most likely you will need to go the "trial-and-error" way. Using iterative k-means, cluster the hand image pixels with respect to {R,G,B} color; k (number of clusters) should be an input parameter (to be set by the user). Iterative k-means should run at least 100 times (with 100 different initializations). Again, with trial-and-error, choose "the best" k value for segmenting the hand. How? By running k-means once with a random initialization (non-iterative) and observing the result; if the chosen k value is acceptable, then run iterative k-means with this k value Iterative k-means: In each execution (from start to convergence), k-means should use different randomly chosen centroids for initialization: each initialization is the color information of a randomly chosen pixel in the image; use a random integer generator to pick such initialization pixel among all pixels in the image. The output should be probability maps: e.g., for k=3, output should be three maps: Plx belongs to k = i) | F), for i={1,2,3). F is the frequency of a pixel x assignment to a cluster, or, in other words, how salient the assignment of x to the i-th cluster is, or even how often a pixel "jumps" to a different cluster. So, each of the calculated maps (one for each cluster "identity"), indicates how often each pixel is assigned to the given cluster. To convert into probability, you will need to normalize into [0,1]. Take a photo of your hand under "ideal" conditions, to capture correctly all shape details/proportions; think: surface/background, lighting, off-plane rotations, percentage of hand region with respect to the overall image. Most likely you will need to go the "trial-and-error" way. Using iterative k-means, cluster the hand image pixels with respect to {R,G,B} color; k (number of clusters) should be an input parameter (to be set by the user). Iterative k-means should run at least 100 times (with 100 different initializations). Again, with trial-and-error, choose "the best" k value for segmenting the hand. How? By running k-means once with a random initialization (non-iterative) and observing the result; if the chosen k value is acceptable, then run iterative k-means with this k value Iterative k-means: In each execution (from start to convergence), k-means should use different randomly chosen centroids for initialization: each initialization is the color information of a randomly chosen pixel in the image; use a random integer generator to pick such initialization pixel among all pixels in the image. The output should be probability maps: e.g., for k=3, output should be three maps: Plx belongs to k = i) | F), for i={1,2,3). F is the frequency of a pixel x assignment to a cluster, or, in other words, how salient the assignment of x to the i-th cluster is, or even how often a pixel "jumps" to a different cluster. So, each of the calculated maps (one for each cluster "identity"), indicates how often each pixel is assigned to the given cluster. To convert into probability, you will need to normalize into [0,1]
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
