Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.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 如何将UIImage转换为位图int数组(rgb565)_Ios_Objective C_Image Processing_Bitmap_Uiimage - Fatal编程技术网

Ios 如何将UIImage转换为位图int数组(rgb565)

Ios 如何将UIImage转换为位图int数组(rgb565),ios,objective-c,image-processing,bitmap,uiimage,Ios,Objective C,Image Processing,Bitmap,Uiimage,我需要将UIImage传递给一个图像处理算法,该算法采用rgb565格式的位图的int数组 稍后,它返回经过图像处理的int数组,我需要将其转换回UIImage 查看其语法: int* ImageProcessingAlgorithm(int bitmapArray[], int width, int height); 我搜索了很多地方,但似乎没有一个有UIImage到int数组的转换,反之亦然。最近我发现的是,但这涉及到字符数组-我尝试适合我的目的,但我不断得到各种访问错误和UIKit库函数

我需要将UIImage传递给一个图像处理算法,该算法采用
rgb565
格式的位图的int数组

稍后,它返回经过图像处理的int数组,我需要将其转换回UIImage

查看其语法:

int* ImageProcessingAlgorithm(int bitmapArray[], int width, int height);
我搜索了很多地方,但似乎没有一个有UIImage到int数组的转换,反之亦然。最近我发现的是,但这涉及到字符数组-我尝试适合我的目的,但我不断得到各种访问错误和UIKit库函数泄漏。可能我没有正确地管理内存,或者在int到unsigned char到int的转换中出现了一些错误

我可以处理这个部分,但我仍然不确定它是否适合我的图像处理算法格式(
rgb565

我是图像处理的新手,图像处理算法对我来说是一个黑匣子,所以我只需要一个整数数组,我可以传递给这个算法,也可以传递给这个算法

我确信的一点是,该算法返回的数组元素数与作为输入的数组元素数相同,即输入和输出数组表示相同数量的图像像素


提前感谢您的帮助。

如我所想,
CGBitmapContextGetData
函数返回一个指向数组的空指针,它可以转换为任何类型的数组指针。重要的是以后再处理它

这是

可以使用以下技术转换为rgb565:

R5 = ( R8 * 249 + 1014 ) >> 11;
G6 = ( G8 * 253 +  505 ) >> 10;
B5 = ( B8 * 249 + 1014 ) >> 11;