将float阵列图像转换为可用于OPENCV的格式[英] Convert float array image to a format usable for opencv

本文是小编为大家收集整理的关于将float阵列图像转换为可用于OPENCV的格式的处理方法,想解了将float阵列图像转换为可用于OPENCV的格式的问题怎么解决?将float阵列图像转换为可用于OPENCV的格式问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

我想知道是否有一种简单的方法可以将我的浮点数组图像转换为iPlimage, 可以通过OpenCV来处理.当然,我可以创建一个具有相同尺寸的空的iPlimage,并且只需将像素从我的浮点阵列图像复制到建模的iPlimage,但是对此有更优雅的解决方案.也许是更快的记忆消耗方法,因为源图像非常大,并且复制过程将需要一段时间.

最好的问候

zhengtonic

推荐答案

您可以做这样的事情(假设32位浮子):

float* my_float_image_data;

CvSize size;
size.height = height ;
size.width = width;
IplImage* ipl_image_p = cvCreateImageHeader(size, IPL_DEPTH_32F, 1);
ipl_image_p->imageData = my_float_image_data;
ipl_image_p->imageDataOrigin = ipl_image_p->imageData;

其他推荐答案

您可以手动填充iPlimage结构'来描述您的数组,按照注释在这里.

iMagedata字段将指向您的原始数组.

,但是不在其上使用DealLocation函数.只需删除末端的结构即可.

本文地址:https://www.itbaoku.cn/post/359341.html