A system for surgical registration. The system may include at least one computing device in communication with a surgical navigation system and the surgical device. The at least one computing device: a) receiving external bone registration data corresponding to locations on the exterior surface of the femur; b) calculating a first registration transform based on the external bone registration data; c) transforming a first bone removal plan of a surgical plan to the operative coordinate system based on the first registration transform; d) receiving internal bone canal registration data corresponding to at least one of location or orientation data from the inner canal of the femur; e) calculating a second registration transform based on both of the external and internal bone canal bone registration data; and f) transforming a second bone removal plan of the surgical plan to the operative coordinate system based on the second registration transform.