gpt4 book ai didi

c - 反转 PGM 的颜色值会扭曲图像

转载 作者:太空宇宙 更新时间:2023-11-04 08:54:41 26 4
gpt4 key购买 nike

我的目标是读入 PGM 图像并生成颜色值反转的图像。但是当我输入 this image ,我回来了this image .我在 C 中编程,在 Windows 7(64 位)上使用 Eclipse 和 MinGW GCC。为什么图像变得如此严重扭曲?

int complement(PGMImage *img) {
int i, j;

// set up new PGM to copy onto
PGMImage* comImg = (PGMImage*)malloc(sizeof(PGMImage));
(*comImg).width = (*img).width;
(*comImg).height = (*img).height;

// invert each pixel
for(i = 0; i <= (*img).width; i++) {
for(j = 0; j <= (*img).height; j++) {

// set inverted value for each new pixel
(*comImg).data[i][j].red = abs((*img).maxVal - (*img).data[i][j].red);
(*comImg).data[i][j].green = abs((*img).maxVal - (*img).data[i][j].green);
(*comImg).data[i][j].blue = abs((*img).maxVal - (*img).data[i][j].blue);
}
}

// save a copy of the complement image
save("C:\\image_complement.pgm", comImg);
printf("A copy of your image has been saved as \"C:\\image_complement.pgm\"\n\n");
void free(comImg);
return 0;
}

最佳答案

我不确定,但我怀疑图像的外部数组索引是行,内部是列。因此我希望 i 应该运行到 (*i​​mg).heightj(*i​​mg).width

关于c - 反转 PGM 的颜色值会扭曲图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17865216/

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