照片直播 php,php直播源码,iOS 图片去背景

php直播源码,iOS 图片去背景相关的代码

- (UIImage *)removeBackgroudWithImage: (UIImage *)image{

unsigned char *targetData = malloc(sizeof(unsigned char) * image.size.width *image.size.height *4);

UIGraphicsBeginImageContext(image.size);

[image drawInRect: CGRectMake(0, 0, image.size.width, image.size.height)];

unsigned char *data = malloc(sizeof(unsigned char) * image.size.width *image.size.height *4);

[self imageRGBABytesRef: &data FromImage: image];

for (int i = 0; i 

UIColor *pixleColor = [UIColor colorWithRed: data[i] / 255.0  green:data[i+1] / 255.0 blue:data[i + 2] / 255.0 alpha:data[i + 3] / 255.0];

CGFloat c, m, y ,k, a;

[pixleColor getCyan:&c magenta:&m yellow:&y black:&k alpha:&a];//YYKit中的类别方法

targetData[i] = data[i];

targetData[i + 1] = data[i + 1];

targetData[i + 2] = data[i + 2];

if (k 

targetData[i + 3] = 0;

}else{

targetData[i + 3] = 255;

}

}

UIImage *result = [self imageFromBRGABytes: targetData imageSize: image.size];

free(targetData);

return result;

}

- (UIImage *)imageFromBRGABytes:(unsigned char *)imageBytes imageSize:(CGSize)imageSize {

CGImageRef imageRef = [self imageRefFromBGRABytes:imageBytes imageSize:imageSize];

UIImage *image = [UIImage imageWithCGImage:imageRef];

CGImageRelease(imageRef);

return image;

}

- (CGImageRef)imageRefFromBGRABytes:(unsigned char *)imageBytes imageSize:(CGSize)imageSize {

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();

CGContextRef context = CGBitmapContextCreate(imageBytes,

imageSize.width,

imageSize.height,

8,

imageSize.width * 4,

colorSpace,

kCGImageAlphaPremultipliedLast);

CGImageRef imageRef = CGBitmapContextCreateImage(context);

CGContextRelease(context);

CGColorSpaceRelease(colorSpace);

return imageRef;

}

- (void)imageRGBABytesRef:(unsigned char **)data FromImage: (UIImage *)image {

unsigned char *targetData = malloc(sizeof(unsigned char) * image.size.width *image.size.height *4);

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();

CGContextRef context = CGBitmapContextCreate(targetData,

image.size.width,

image.size.height,

8,

image.size.width * 4,

colorSpace,

kCGImageAlphaPremultipliedLast);

CGContextDrawImage(context, CGRectMake(0, 0, image.size.width, image.size.height), image.CGImage);

memcpy(*data, targetData, sizeof(unsigned char) * image.size.width *image.size.height *4);

CGContextRelease(context);

CGColorSpaceRelease(colorSpace);

}

以上就是

php直播源码,iOS 图片去背景相关的代码, 更多内容欢迎关注之后的文章

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值