1. An image processing apparatus comprising: at least one memory that stores a program of instructions; and at least one processor that executes the program of instructions to cause the image processing apparatus to implement: an acquisition unit configured to acquire an image from which a skin region of a human body is to be extracted; a part estimation unit configured to estimate a human body part region in the acquired image; a skin attribute estimation unit configured to estimate a skin attribute of the estimated human body part region; a part correction unit configured to correct the human body part region based on the estimated skin attribute; and a skin region extraction unit configured to extract the skin region from the acquired image based on the skin attribute of the estimated human body part region and the corrected human body part region, wherein the estimation of the skin attribute of the human body part region by the skin attribute estimation unit and the correction of the human body part region by the part correction unit are repeated for a plurality of times, and wherein the part correction unit compares a difference in position of the human body part region between before and after corrections of the human body part region with a predetermined value, and estimation of the skin attribute of the human body part region by the skin attribute estimation unit and correction of the human body part region by the part correction unit are repeated until the difference in position becomes smaller than the predetermined value.