Например: пользователь выбирает 1000 * 1000 изображений, которые я посылаю бэкэнду для обнаружения объекта, поэтому я получаю координаты объекта, который присутствует на изображении.
Like this :(
{
x = 385;
y = 249;
},
{
x = 448;
y = 242;
},
{
x = 454;
y = 276;
},
{
x = 391;
y = 284;
}
);
Я устанавливаю вид изображения в соответствии с форматом изображения, чтобы фактический размер изображения варьировался, поэтому в зависимости от размера аспекта мне нужно изменить координаты для соответствия размеру изображения.
Это код, который я пробовал.
var topLeftXOne = point[0]["x"] as! CGFloat
var topLeftYOne = point[0]["y"] as! CGFloat
var topRightXOne = point[1]["x"] as! CGFloat
var topRightYOne = point[1]["y"] as! CGFloat
var bottomtopRightXOne = point[2]["x"] as! CGFloat
var bottomRightYOne = point[2]["y"] as! CGFloat
var bottomLeftXOne = point[3]["x"] as! CGFloat
var bottomLeftYOne = point[3]["y"] as! CGFloat
let pointsView = ALPDView(frame: CGRect.zero)
let x: CGRect = AVMakeRect(aspectRatio: image.size, insideRect: pointsView.imageView.frame)
let scaleX = image.size.width / x.width
let scaleY = image.size.height / x.height
topLeftXOne = topLeftXOne / scaleX
topLeftYOne = topLeftYOne / scaleY
topRightXOne = topRightXOne / scaleX
topRightYOne = topRightYOne / scaleY
bottomtopRightXOne = bottomtopRightXOne / scaleX
bottomRightYOne = bottomRightYOne / scaleY
bottomLeftXOne = bottomLeftXOne / scaleX
bottomLeftYOne = bottomLeftYOne / scaleY
Но я не получаю должного результата.
Это, например, изображение, я хочу изменить координаты в соответствии с размером изображения аспекта.