zoukankan      html  css  js  c++  java
  • 一个使用CxImage类的程序配置

    CxImage库的基本信息就不介绍了,网上很多资源,下载页面

    http://www.codeproject.com/KB/graphics/cximage.aspx 

    开发环境VS2008 SP1

    首先新建一个解决方案叫做ImageLab
    新建如下几个工程:
    MyImageLab:一个MFC应用程序,继承的CScrollView类
    CxImage:一个Win32项目,静态库,添加所有的.h和.cpp文件
    jpeg:一个Win32项目,静态库,添加所有的.h和.cpp文件
    png:一个Win32项目,静态库,添加所有的.h和.cpp文件
    zlib:一个Win32项目,静态库,添加所有的.h和.cpp文件

    在ximacfg.h中设置如下:
    #define CXIMAGE_SUPPORT_BMP 1
    #define CXIMAGE_SUPPORT_GIF 1
    #define CXIMAGE_SUPPORT_JPG 1
    #define CXIMAGE_SUPPORT_PNG 1
    其他都为0

    因为我只是使用:bmp,gif,jpeg和png格式的图片!

    关系:
    png要添加附加库路径:..\zlib
    CxImage要添加附加库路径:..\zlib,..\jpeg,..\png
    MyImageLab要添加附加库路径..\CxImage

    设置CxImage,png,jpeg,zlib的输出目录,在属性->配置属性->常规->输出目录,把输出目录和中间目录都改成:.\Debug

    生成zlib,png,jpeg,得到所有的.lib库文件

    下面就是要让MyImageLab工程添加这些lib文件了。在stdafx.h文件最下面写入:

    #include "ximage.h"

    #pragma comment(lib,"cximage.lib")
    #pragma comment(lib,"jpeg.lib")
    #pragma comment(lib,"png.lib")
    #pragma comment(lib,"zlib.lib")

    在MyImageLab属性->链接器->输入->常规->附加库目录,添加如下目录:..\png\Debug,..\jpeg\Debug,..\zlib\Debug,..\CxImage\Debug

    设置项目生成顺序:zlib,png,jpeg,cximage,MyImageLab

    生成解决方案就行了。 MyImageLab设为启动项。

    接下来就是给你的项目添加功能和使用CxImage类了。jpeg,png,zlib,是当前国际标准的库文件,你不要修改。CxImage是就是一个开发人员写的一个图像处理库,它用了前面的标准C库文件,同时自己把自己的CxImage库开源了。所以,其实如果不要改CxImage的底层算法的话,就不需要修改CxImage项目的内容,但是也可以给这个库添加功能或者修改功能。但是,现在的主要任务是完善MyImageLab项目的功能。逐步实现如下功能:

    1,读入和保存图像
    2,能够有矩形框选择图像区域
    3,分析图像的分量值,实现一些简单的变化:如二值化,彩色转灰度图,简单分割等
    4,实现一些较高级功能,如色彩空间的转换,去除红眼等!!

    先给个测试程序:

    在菜单栏添加一个响应函数:onTest

    void CMyImageLabDoc::OnTest()
    {
        
    // TODO: 在此添加命令处理程序代码
        CxImage image;
        image.Load(_T(
    "Anne Hathaway 1.jpg"), CXIMAGE_SUPPORT_JPG);

        
    if(image.IsValid())
        {
            image.GrayScale();
            image.Save(_T(
    "test.jpg"), CXIMAGE_SUPPORT_JPG);
        }
    }

    在项目目录可以看到一个转换成灰度图的安妮·海瑟薇。

  • 相关阅读:
    Elixir 学习资源
    elixir 模块
    elixir 表单 map
    elixir 关键字列表
    elixir case cond if
    elixir 模式匹配
    elixir 基础数据结构
    5、OpenCV Python ROI和泛洪填充
    6、OpenCV Python 图像模糊
    4、OpenCV Python 像素运算
  • 原文地址:https://www.cnblogs.com/CCBB/p/1900315.html
Copyright © 2011-2022 走看看