Как получить правильное значение перечисления после обнаружения вращения [закрыто]C#

Место общения программистов C#
Ответить
Anonymous
 Как получить правильное значение перечисления после обнаружения вращения [закрыто]

Сообщение Anonymous »

Перечисление PaddleSharp Rotation определяется как

Код: Выделить всё

public enum RotationDegree
{
_0,
_90,
_180,
_270
}
Поворот изображения определяется с помощью

Код: Выделить всё

    using Mat imgSrc = Mat.FromImageData(image);
using PaddleRotationDetector detector = new(RotationDetectionModel.FromDirectory("PP-OCRv5_server_det"));
RotationResult rot = detector.Run(imgSrc);
switch(rot.Rotation) {
case RotationDegree._0:
case RotationDegree._90:
case RotationDegree._180:
case RotationDegree._270:
// Never occurs
break;

default:
throw new Exception("Invalid enum value");  // 2991 for test image
}

После результата обнаружения вращения. Перечисление вращения содержит недопустимое значение. Это значение различно для каждого изображения. Исключение возникает всегда. Определенные значения перечисления никогда не возвращаются.
Тестовое изображение:
Изображение

Ожидаемое поведение
Поворот должен иметь значение RotationDegree._270 (целое число 3)

Подробнее здесь: https://stackoverflow.com/questions/798 ... -detection
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»