画像認識で検出した物体(図形)の回転角度に加え、反転を求めるには、 次の手法のいずれか、または、これらの組み合わせで実現できる気がする。
以下は、改めて調べる為のメモ書きです。
OpenCV の minAreaRect() を利用
領域(輪郭)の特徴 — OpenCV-Python Tutorials 1 documentation
OpencvのminArearectで回転角度の計算 - how to code something
OpenCVで外接矩形と回転角の算出 - how to code something
OpenCV の matchShapes() を利用
cv::matchShapesによる形状マッチングを試してみた - Qiita
OpenCV - matchShape で輪郭の類似度を計算し、マッチングする方法について - pystyle
テンプレート・マッチング
具体的なurlを見つけることはできませんでしたが、 想定している回転角は、45°毎ですので、左右反転を考慮し、 8枚 x 2 = 16枚のテンプレートを用意し、これとマッチングを行えば、 よい気がします。