美文网首页
iOS 遍历图片像素

iOS 遍历图片像素

作者: yitez | 来源:发表于2019-06-14 14:33 被阅读0次

像素是位图的基本组成单位,是图片上的一个个小方块,这些小方块都有一个明确的位置和被分配的色彩数值,小方格颜色和位置就决定该图像所呈现出来的样子。
我们平时在iOS开发里面使用的图片就是位图。

项目需要计算图片透明像素的百分比,所以需要遍历像素,这里图片是RGBA的颜色模式,:

-  (void)searchEveryPixelFroImage:(UIImage *)image {

    CGImageRef imgref = image.CGImage;
   //   获取图片宽高(总像素数)
    size_t width = CGImageGetWidth(imgref);
    size_t height = CGImageGetHeight(imgref);
   // 每行像素的总字节数
    size_t bytesPerRow = CGImageGetBytesPerRow(imgref);
  // 每个像素多少位(RGBA每个8位,所以这里是32位)         ps:(一个字节8位)
    size_t bitsPerPixel = CGImageGetBitsPerPixel(imgref);
    CGDataProviderRef dataProvider = CGImageGetDataProvider(imgref);
    CFDataRef data = CGDataProviderCopyData(dataProvider);
    
    UInt8 *buffer = (UInt8*)CFDataGetBytePtr(data);// 图片数据的首地址
    
    //遍历
    for (int j = 0; j < height; j++) {
        for (int i = 0; i < width; i++) {
             //每个像素的首地址    
            UInt8 *pt = buffer + j * bytesPerRow + i * (bitsPerPixel/8);
           
             UInt8  red = *pt;
             UInt8  green = *(pt+1);   //指针向后移动一个字节
             UInt8  blue = *(pt+2);
             UInt8  alpha = *(pt+3);
            NSLog(@"red:%d, green:%d,blue:%d,alpha:%d",red,green,blue,alpha);
        }
    }
}

相关文章

  • iOS 遍历图片像素

    像素是位图的基本组成单位,是图片上的一个个小方块,这些小方块都有一个明确的位置和被分配的色彩数值,小方格颜色和位置...

  • iOS遍历像素

    我们的需求是获取图片的透明区域 - (UIImage *)crateImage:(UIImage *)image{...

  • 图片像素高效遍历方案

    背景 在进行图片语义分割模型训练时,需要对图片进行通道转换,我在进行图片掩码处理时,发现按照行列方式对图片数据进行...

  • 极验滑动验证码的识别

    同时获取两张图片。设定一个对比阈值,然后遍历两张图片,找出相同位置像素 RGB 差距超过此阈值的像素点,那么此像素...

  • iOS-图片解压缩相关

    SDWebimage中对图片的解压缩 谈谈 iOS 中图片的解压缩 iOS 开发:绘制像素到屏幕 探讨iOS 中图...

  • iOS图片与像素

    我们知道图片的格式有很多种,如主流的png,jpg。这些格式指什么呢,指的是对图片的bitemap裸数据的压缩格式...

  • iOS 图片像素处理

  • UIImage转换成像素点,以及UIImage像素数据翻转。

    我们都知道图片是由很多个像素点组成的,而iOS中的图片通常又由UIImage承载。如果我们想查看一张图片的每个像素...

  • 像素遍历

    当处理图片的像素值时,如变化i=(i/10)*10。没有必要对每一个像素值进行这个操作。可以创建一个表,如果是灰度...

  • 如何扫描图像、利用查找表和计时

    如何提高图片遍历速度 如果矩阵存储的是单通道像素,遍历速度会很快,但是如果是多通道,速度就会慢 颜色空间缩减 将现...

网友评论

      本文标题:iOS 遍历图片像素

      本文链接:https://www.haomeiwen.com/subject/cxmufctx.html