gpt4 book ai didi

c++ - 将 MAT 图像复制到 C++ 中的特定地址

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:04:41 25 4
gpt4 key购买 nike

我正在尝试将从文件加载的 MAT 图像复制到特定地址位置。我有以下代码

int main()
{

cv::Mat inImg = cv::imread("M6_traffic.jpg");

//Data point copy
unsigned char * pData = (unsigned char *)inImg.data;
unsigned char * Dest = (unsigned char *)0x0f000000;;

int width = inImg.rows;
int height = inImg.cols;

//data copy using memcpy function
memcpy(Dest, pData, sizeof(unsigned char)*width*height*3);

}

但是当我运行它时它总是崩溃,知道为什么吗?有更好的理由这样做吗?我的最终目标是能够将图像数据复制到基于 Linux 的系统中的特定地址

最佳答案

地址 0x0f000000 上可能没有分配内存。你不能强制这是一个有效的地址

使用 malloc 分配正确大小的内存,它将起作用。操作系统然后确定您的地址空间并返回指向它的指针。

unsigned char* Dest = malloc(sizeof(pData));
memcpy(Dest, pData, sizeof(pData))

关于c++ - 将 MAT 图像复制到 C++ 中的特定地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49406298/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com