关于C++6.0的图像水平镜像变换-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

关于C++6.0的图像水平镜像变换

2016-03-04 11:59:14 1937 1

关于C++6.0的图像水平镜像变换

头文件
#ifdef MYDLL_EXPORTS
#define MYDLL_API __declspec(dllexport)
#else
#define MYDLL_API __declspec(dllimport)
#endif
#ifndef LIB_H
#define LIB_H
struct image
{
unsigned char * ptr;
int numcolors;//3---彩色(排序方式RGB);1----灰度或者黑白图像
int width; /* image width in pixels /
int height; / image height in pixels */
};
#ifdef __cplusplus
extern "C"
{

#endif
//函数声明
MYDLL_API int imgfiletomat(char *filename,struct image *pimage);//-1表示读取图像文件错误;1表示读取正常
MYDLL_API void mattoimgfile(char *filename,struct image *pimage);
MYDLL_API void imgshow(char *windowname,struct image *pimage);

MYDLL_API int wait(int delay);//延迟delay毫秒数。若等于0,则无限制的等待按键事件
MYDLL_API int createwindow(char *windowname);//窗口的名字,它被用来区分不同的窗口,并被显示为窗口标题。 
MYDLL_API void destroywindow(char *windowname);//要被销毁的窗口的名字。 
MYDLL_API void destroyallwindows(void);//销毁所有窗口
#ifdef __cplusplus

}
#endif
#endif
** 运行主程序 ** 
#include "mydll.h"
#include 
#include 
#include
#include
void main()
{
struct image img1;
FILE *fp1;
unsigned char *pdata;
int temp;
int i,j,k=0;
int height,wide;
fp1=fopen("D:\\学习\\imagetest\\imagedsp\\Debug\\1.txt","w");


imgfiletomat("D:\\学习\\imagetest\\imagedsp\\Debug\\1.jpg", &img1);
createwindow("name1");
imgshow("name1",&img1);
wait(0); //等待按键

height=img1.height;
wide=img1.width;
pdata=img1.ptr;
for(i=0;i<height;i++)
for(j=0;j<wide /2*3;j++)
{          
     temp=*(pdata+j);
  *(pdata+j)=*(pdata+j+3*wide-j/3*3*2-3);
  *(pdata+j+3*wide-j/3*3*2-3)=temp;
} 

createwindow("name1");
imgshow("name1",&img1);
wait(0); //等待按键
}

没有错误,但不知道为什么图像没有发生变化

取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 18:52:06

    代码逻辑有问题,理清思路,从而去实现功能

    0 0
相关问答

1

回答

云函数加载不出来,代码1.7g是太大了吗?一直停在99%,什么办法能解决?

2022-11-16 10:48:59 143浏览量 回答数 1

1

回答

CSS设置背景水平平铺时通过什么代码来描述?

2022-03-25 00:25:03 320浏览量 回答数 1

1

回答

Tomcat 6.0 共享线程池的配置:报错

2020-06-14 17:00:33 324浏览量 回答数 1

0

回答

阿里云ECS ssh连接巨慢, 进程nullcrew cpu占用99%

2019-05-19 21:25:24 657浏览量 回答数 0

3

回答

[@talishboy][¥20]java中,final作用:不能被改变;不能被继承;提高效率为什么大多数方法不加它来提升性能呢?

2018-12-14 22:49:19 2197浏览量 回答数 3

1

回答

我想将配置降到cpu1G,内存0.5G,怎么操作?

2018-11-03 16:50:11 767浏览量 回答数 1

2

回答

cpu是2核内存2G的云主机,公共镜像选择哪个会好点

2015-08-13 17:07:14 4473浏览量 回答数 2

4

回答

请官方放开按量付费CPU1核内存1G的ECS的申请

2014-05-26 00:02:58 7554浏览量 回答数 4

7

回答

关于CPS的问题

2013-09-03 16:59:53 6114浏览量 回答数 7

2

回答

阿云浏览器1.0.5版的特性图示

2011-08-24 11:40:45 6627浏览量 回答数 2
+关注
文章
问答
问答排行榜
最热
最新
相关电子书
更多
继承与功能组合
立即下载
下一代大数据分析架构
立即下载
对象的生命期管理
立即下载