Yingtao Guo
Yingtao Guo
Use the code from the [Inchworm project](https://github.com/guoyingtao/Inchworm).
Automatic Image rectification https://www.codeproject.com/Articles/104248/Detect-image-skew-angle-and-deskew-image
https://www.hackingwithswift.com/articles/135/how-to-render-uiviews-in-3d-using-catransformlayer https://dzone.com/articles/a-look-at-perspective-transform-correction-with-co https://stackoverflow.com/questions/8235288/perspective-correction-of-uiimage-from-points https://github.com/paulz/PerspectiveTransform `CATransform3D CATransform3DMakeRotation(CGFloat angle, CGFloat x, CGFloat y, CGFloat z);`

update getTransformInfo(byNormalizedInfo:) to getTransformInfo(byNormalizedInfo: imageRotationType:) in CropViewProtocol This PR has to do with #407