Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 计算图像点数的正确方法是什么?_Ios_Swift_Image Processing_Pixels - Fatal编程技术网

Ios 计算图像点数的正确方法是什么?

Ios 计算图像点数的正确方法是什么?,ios,swift,image-processing,pixels,Ios,Swift,Image Processing,Pixels,Bounds给了我(0.0,0.0,375.0,667.0)的值来帮助计算视图尺寸。而CGImage,位图的大小给了我490像素宽和751像素高的像素数。我不明白为什么当比例因子给我2的值时,我得到的UIView边界内容大小小于CGImage像素宽度和高度。但是我如何从维度计算点数呢?我如何取出375.0和667.0进行计算?下面的代码帮助我获得视图尺寸和比例因子 let ourImage: UIImage? = imageView.image let viewBounds = view.bou

Bounds给了我(0.0,0.0,375.0,667.0)的值来帮助计算视图尺寸。而CGImage,位图的大小给了我490像素宽和751像素高的像素数。我不明白为什么当比例因子给我2的值时,我得到的UIView边界内容大小小于CGImage像素宽度和高度。但是我如何从维度计算点数呢?我如何取出375.0和667.0进行计算?下面的代码帮助我获得视图尺寸和比例因子

let ourImage: UIImage? = imageView.image
let viewBounds = view.bounds
print("\(viewBounds)")
var scale: CGFloat = UIScreen.mainScreen().scale
print("\(scale)")
这是我用来接收490*751像素高度和宽度的代码

public init?(image: UIImage) {
    guard let cgImage = image.CGImage else { return nil }

    // Redraw image for correct pixel format
    let colorSpace = CGColorSpaceCreateDeviceRGB()

    var bitmapInfo: UInt32 = CGBitmapInfo.ByteOrder32Big.rawValue
    bitmapInfo |= CGImageAlphaInfo.PremultipliedLast.rawValue & CGBitmapInfo.AlphaInfoMask.rawValue

    width = Int(image.size.width)
    height = Int(image.size.height)
 .... }

或者我可以使用(像素宽度*2+像素高度*2)来计算点数吗?我需要计算或固定点数(n),以在使用活动轮廓方法的图像分割的进一步方程式中进行替换。

图像视图不会调整大小以匹配您为其设置的图像属性。您设置的图像也不会调整大小以匹配图像视图的帧

相反,图像视图显示该图像的表示形式,缩放到与图像视图匹配的任何大小(基于您选择的规则、纵横比匹配、纵横比填充、缩放到填充、其他等等)

因此,图像的实际大小正好是从图像的
size
属性返回的值

要获取实际图像的实际宽度,请使用:

image.size.width
同样,要获得实际图像的实际高度,请使用:

image.size.height

我不明白你想做什么。你到底为什么要计算图像的大小?没关系。这听起来像是XY问题。我需要计算或设置图像中的点数,以便在图像分割算法的进一步计算中使用,需要使用方程中的值。那么我如何计算或设置点数呢?哦。所以图像视图的大小不会调整为图像的大小。图像视图将显示缩放到图像视图大小的图像表示。。。但是图像本身可能有不同的大小(甚至可能有不同的纵横比)
image.size.width
image.size.height
提供实际图像的真实测量值。哦,好的。根据给定的建议工作。非常感谢。太好了,答案对我很有用。你能不能提供它作为一个答案,这样我就可以选择它,并提到这个问题的答案?再次感谢你,我被大小和界限弄糊涂了。