最近这两天一直在研究命令行参数的编译,现代吗如下:

#include <highgui.h>
#include <math.h>
#include <cv.h> IplImage *Igray = 0, *It = 0, *Iat; int main( int argc, char** argv )
{
//输入命令行
double threshold = (double)atof( argv[1] ); //convert string to double
int threshold_type = atoi( argv[2] ) ? CV_THRESH_BINARY : CV_THRESH_BINARY_INV;
int adaptive_method = atoi( argv[3] ) ? CV_ADAPTIVE_THRESH_MEAN_C : CV_ADAPTIVE_THRESH_GAUSSIAN_C;
int block_size = atoi( argv[4] );
double offset = (double)atof( argv[5] );
//加载灰度图
if( ( Igray = cvLoadImage( argv[6], CV_LOAD_IMAGE_GRAYSCALE ) ) == 0 )
{
return -1;
}
//创建同样大小8位灰度图用于输出
It = cvCreateImage( cvSize( Igray -> width, Igray -> height ), IPL_DEPTH_8U, 1 ); //单通道8位灰度图
Iat = cvCreateImage( cvSize( Igray -> width, Igray -> height ), IPL_DEPTH_8U, 1 );
//阈值化
cvThreshold( Igray, It, threshold, 255, threshold_type );
cvAdaptiveThreshold( Igray, Iat, 255, adaptive_method, threshold_type, block_size, offset );
//命名窗体输出
cvNamedWindow( "Raw", 1 );
cvNamedWindow( "Threshold", 1 );
cvNamedWindow( "Adaptive Threshold", 1 );
cvShowImage( "Raw", Igray );
cvShowImage( "Threshold", It );
cvShowImage( "Adaptive Threshold", Iat );
cvWaitKey(0);
//回收内存
cvReleaseImage( &Igray );
cvReleaseImage( &It );
cvReleaseImage( &Iat );
cvDestroyWindow( "Raw" );
cvDestroyWindow( "Threshold" );
cvDestroyWindow( "Adaptive Threshold" ); return 0;
}

  上述代码是二值化和自适应二值化的比较,在该工程文件夹同级目录下面的Debug文件找到 自适应阈值.exe 文件,然后打开命令行提示符,针对上述文件可进行下面操作:

1,首先进到Debug文件,找到.exe文件,如D:\myopencv\opencv\Code\Opencv\Debug

2,在命令行输入下面:

D:\myopencv\opencv\Code\Opencv\Debug>自适应阈值.exe 15 1 1 71 15 D:\myopencv\opencv\Code\Opencv\自适应阈值\2.jpg

      3,结果如下:

             

简单的和大家分享一下。

opencv在VS2010命令行编译过程的更多相关文章

  1. VS2010命令行编译C#和VC项目

    VS2010命令行编译C#和VC项目 VS2010命令行编译C#和VC项目 根据需要动态创建数据库字段后,需要动态创建或者调整页面,那就需要编译这些页面和后台文件.因此使用命令行编译将会非常方便,对于 ...

  2. 【linux基础】使用命令行编译运行c++程序

    前言 在linux系统运行程序,小鹅知道的有3种编译方式,一种是直接命令行编译,一种是使用Cmake,一种是使用脚本文件(*.sh).本文介绍的是使用命令行编译. 使用过程 注意不同系统的编译器版本可 ...

  3. iOS系统提供开发环境下命令行编译工具:xcodebuild

    iOS系统提供开发环境下命令行编译工具:xcodebuild[3] xcodebuild 在介绍xcodebuild之前,需要先弄清楚一些在XCode环境下的一些概念[4]: Workspace:简单 ...

  4. Android 命令行编译、打包生成apk文件

    一.搭建搭建环境 1. 安装JDK 和 Android SDK   2. 配置环境变量 D:\android-sdk-windows\tools C:\Program Files\Java\jdk1. ...

  5. 终端命令行编译运行C#程序HelloWorld

    终端命令行编译运行C#程序HelloWorld 今天忽然有人问我,刚学习java程序的时候,一般老师都会建议我们从配置环境变量开始从命令行编译运行程序,那么学习c#的时候基本是直接安装visual s ...

  6. Delphi的命令行编译命令

    Borland出品的Delphi,有着闪电般的编译速度,但是在界面控件使用较多.工程项目较大的时候,编译一个工程仍需要一段时间,打开庞大的Delphi IDE,也需要时间.其实,在一个工程开发结束,调 ...

  7. 命令行编译java的一点总结

    今天在使用命令行编译时遇到些问题,顺便又仔细分析了一些基础知识,记录总结一下. 下面使用javac和java命令都是在 D:\Workspace\java目录下执行的: 1 //Inner.java ...

  8. msvc交叉编译:使用vcvarsall.bat设置命令行编译环境

    一直以来我只知道vc设置命令行编译环境的批处理命令是%VS140COMNTOOLS%/Common7/Tools下的vsvars32.bat,(%VS140COMNTOOLS%为定义vs2015公共工 ...

  9. java命令行编译运行、打包jar

    过程:java文件→class文件→exe执行文件 --------------------------------------------- 一.编译:从.java生成.class   (1)ecl ...

随机推荐

  1. android进程间通信:使用AIDL

    android 的binder其实是基于 openbinder实现的,openbinder的地址:http://www.angryredplanet.com/~hackbod/openbinder/d ...

  2. openStack云平台虚拟桌面galera mysql 3节点集群实例实战 调试完成

    被复制节点: /usr/local/mysql/bin/mysqld_safe --wsrep_cluster_address=gcomm:// >/dev/null &复制节点01: ...

  3. 你不一定能做对的JavaScript闭包面试题

    由工作中演变而来的面试题 这是一个我工作当中的遇到的一个问题,似乎很有趣,就当做了一道题去面试,发现几乎没人能全部答对并说出原因,遂拿出来聊一聊吧. 先看题目代码: function fun(n,o) ...

  4. .net对js和css、img剥离项目进行压缩优化、cdn加速

    由于网站首页以及经常用的页面初始化慢,想后面想了对image.js和css进行迁移优化. 1.把他放到独立的域名上面,这个就要对image,js和css从原项目上面脱离,以及把原来很多页面引用的地址修 ...

  5. 华为EC169在MAC 10.9.6下的安装方法

    [问题描述] 华为EC169 3G上网卡需要在mbp中安装驱动. 华为官网(http://consumer.huawei.com/cn/)直接搜索EC169,会发现最新的驱动也是2009年发布. 下载 ...

  6. js判断input输入框为空时遇到的问题 弹窗后,光标没有定位到输入框,而是直接执行我的处理页面程序

    无论是会员注册还是提交订单,我们都要使用到form表单,此时我们在处理数据时,就要判断用户填写的信息.一次是直接通过js判断input输入框是否没有填信息,然后在后台处理文件中通过过滤字符串后再次判断 ...

  7. Qt 学习之路 2(80):定位器

    QML 提供了很多用于定位的元素.这些元素叫做定位器,都包含在 QtQuick 模块.这些定位器主要有 Row.Column.Grid和Flow等. 为了介绍定位器,我们先添加三个简单的组件用于演示: ...

  8. Windows7如何在安全模式下卸载驱动(亲测)

    在桌面“我的电脑”上点鼠标右键,选择“属性”,“硬件”,“设备管理器”,找到“显示卡选项”,打开前面的“+”,然后按鼠标右键,选择“卸载”就可以了. (亲测,主板驱动卸载成功启动)

  9. Not enough free space on disks! linux

    Not enough free space on disks!100多G未分配空间也装不了Linux ------------------------------------------------- ...

  10. UITableView学习总结

    一.UITableView概述 UITableView继承自UIScrollView,可以表现为Plain和Grouped两种风格. UITableView有两个Delegate分别为:dataSou ...