I am looking for a method of clustering data that are close to the corners of an $N$-dimensional parallelepiped (but I don't know the vectors spanning it). Is there a good method for finding hyperplanes that are parallel to the surfaces of parallelepiped which could be used for labeling the data such that they fall into $2^N$ different categories?
So far, I tried to use k-means clustering for finding a first hyperplane that splits the data into two sets and reduces the problem from $N$ to $N-1$ dimensions, enabling a recursive solution. I am, however, not sure that this approach works well for larger values of $N$ (I’m mostly interested in problems where $2\leq N \leq 50$).
Not being an expert in unsupervised learning, here’s why I am interested in this problem: I want to assign the quantum state of a collection of $N$ atoms each of which is either in a fluorescing or non-fluorescing state. The atoms' fluorescence is imaged onto a CCD using an area of about 1000 pixels; each atom has a certain probability of being in either of the two states. The position of the atoms is fixed and the task is to assign the quantum states given a set of $M$ pictures.
By calculating and diagonalizing a pixel correlation matrix, I can obtain eigenpictures. The data contained in each picture can be reduced to an $N$-dimensional vector by projecting the recorded picture onto the $N$ eigenpictures with the biggest eigenvalues. As the measured fluorescence is additive, these $N$-dimensional vectors cluster around the corners of a parallelepiped as mentioned above.
I’d be grateful for suggestions how to carry out the required clustering or how to calculate the $N$ normal vectors of the faces of the parallelepiped.