A body posture detection system includes an inertial measurement unit, at least two ultrasonic transceivers and a processor. The inertial measurement unit is configured to retrieve an orientation vector of a first portion of a human body. The ultrasonic transceivers are mounted on the first portion and a second portion of the human body respectively. The processor is configured to generate a candidate gesture range of the first portion according to the orientation vector. The processor is configured to measure a distance between the first portion and the second portion according to an ultrasound transmitted between the ultrasonic transceivers. The processor is further configured to determine a current gesture of the first portion from the candidate gesture range according to the distance.