I am currently working on camera calibration. Many implementations require the user to manuallly point out corners. Here is an idea on how to detect and label corners automatically.
Compute corners of input image (and use non-maxima suppression).
Count corners in each component.
Look for a component which contains exactly 40 corners.
Get largest component of inverse of grid (i.e. the surroundings).
Grow that component and find all corners on it (i.e. corners on the boundary of the grid).
Find centre of gravity of all corners and compute vectors from centre to each boundary corner.
Sort boundary corners by angle of those vectors.
Use non-maxima suppression on list of length of vectors to get the 4 “corner corners” (convexity).
Use the locations of the 4 “corner corners” to compute a planar homography mapping the image coordinates of the 8 times 5 grid to the ranges 0..7 and 0..4 respectively.
Use the homography to transform the 40 corners and round the coordinates.
Order the points using the rounded coordinates.
Further work is about taking several images to perform the actual camera calibration.
Thanks to Manuel Boissenin for suggesting convexity for finding the “corner corners”.
Update:
After calibrating the camera the ratio of focal length to pixel size is known (also see Zhengyou Zhang’s camera calibration). Once the camera is calibrated, it is possible to estimate the 3D pose of the calibration grid in every frame.
I watched this interview with Steve Gibson about the Bitcoin crypto currency. The Bitcoin software for online peer-to-peer banking was developed by Satoshi Nakamoto (中本 哲史) and it is available at bitcoin.org.
Basically every block of Bitcoins is a solution of a cryptographic equation. I.e. instead of a scarce metal (such as gold), the currency uses hard computational problems as a proof of work. Standard asymmetric encryption is used to digitally sign transactions. The proof of work is also used to cryptographically strengthen a chain of transactions in order to prevent double-spending of coins (see Bitcoin publication for more details). The only known attack requires the attacker to have more computational power at his/her disposal than the entire network of Bitcoin clients.
There’s a number of organisations and shops which already accept Bitcoins (see Bitcoin.it for a list of sites that accept Bitcoins). Furthermore there are several traders which will exchange Bitcoins for US dollars, Euros, and other currencies (there is an early review of Bitcoin exchanges). According to Bitcoin Charts the exchange rate currently is around 0.9 USD/BTC
Update:
There are concerns that Bitcoin will suffer a deflationary spiral because the total amount of currency is limited. Of course if this is a real problem one could start a new peer-to-peer currency with a built-in controlled inflation.
Update:
Here’s a nice video giving a quick introduction to Bitcoin.