- 博客(74)
- 资源 (20)
- 收藏
- 关注
转载 张正友标定方法标定精度评估
摘抄自matlab帮助文件Evaluating the Accuracy of Single Camera Calibration- MATLAB & SimulinkOverviewCamera calibration is the process of estimating parameters of the camera using images of a special calibration pattern. The parameters include camera intr
2022-03-04 18:28:09
667
原创 关闭CPU风扇灯的正确做法
1. 查看散热风扇的类型,找供应商咨询,如何关灯,法1:有些可以通过软件控制,如thermaltake品牌的部分风扇(风扇 - 产品)法2:有些是由主板来控制的,使用CPU-Z查看主板型号(如Z590 A pro),需找主板供应商咨询(微星)2. 下载主板供应商提供的软件,如微星的msi center,安装后使用相关功能关闭CPU灯...
2022-03-01 18:44:05
29057
原创 matlab 调用dlib进行人脸检测
1:http://dlib.net/下载最新版本dlib源码,并解压2:https://cmake.org/download/下载安装cmake工具3:修改cmake_mex_wrapper文件4:修改cmakelist.txt文件5:使用cmake对dlib源码进行编译6:添加库目录 D:\MATLAB\R2016b\extern\lib\win64\...
2020-04-25 12:00:47
1300
转载 matlab 保存出来的图片或pdf背景为黑色解决方案,验证
Subject: printing unwanted black backgroundFrom: Henry Date: 10 Jun, 2014 13:00:18Message: 5 of 9Reply to this message Add author to My Watch List View original formatFlag as spa
2017-01-31 23:22:22
3729
原创 计算机间网络直连互传,速度慢的解决方案
1:将用于直连的两台电脑设置为千兆全双工模式2:修改接收缓存区至512最近做实验,有大量数据需要传输,硬盘拷贝速度慢,想使用网络直连的方法。但速度只有10m/s,但网卡都是为千兆网卡,找了半天也没找到解决方案,摸索出上述方案,分享之
2016-12-27 20:41:38
5084
1
转载 OpenCV_连通区域分析(Connected Component Analysis/Labeling)
这篇原理讲的很到位http://blog.youkuaiyun.com/icvpr/article/details/10259577此篇有实现代码http://blog.youkuaiyun.com/augusdi/article/details/9008921不过第53行是个bug
2016-09-22 21:15:22
1090
原创 应用程序无法正常启动0xc000007b解决思路
程序设置:多线程调试、共享MFC,使用manifast,本机编译好程序在其它计算机上无法运行,提示007b错误!尝试了以下内容:win7 64 sp1补丁,无效vcredistribute补丁,无效装vs2012,无效直接排除 dx的问题,自己编的程序自己清楚,根本没有涉及那一块manifast所有相关设置为否,ok(此时设置为了静态mfc) : 连接器-》清单文
2016-09-06 11:21:09
3330
转载 Mat及其数据指针
mat 的综合使用 http://wenku.baidu.com/link?url=rmTE6meVj-6O0o6IGFJxcdS6CVJMCeGUh8QEKZmnfTeezuyggC-M9wu6g5AQA61b3kyG9AnQosVnRYKw8yqAoTJcEsAE7MVMVetELJhs5e7 Mat::data的使用在opencv中,Mat很方便;但当用到不是
2016-07-26 11:46:03
7930
原创 c++中dll内存问题,感觉有些混乱,
这两天在做一个数据结构,使用树结构,两层,第一层的数据元素为第二层的n个分支遇到问题如下:1:使用vector在debug下运行正常,在release下源码运行正常封装后运行失败请教了多人,觉得可能是vector的使用问题,因为我将第一层封装为dll,而在第二层使用源文件,导致在第二层申请的内存在第一层释放时出现问题。2:为了避免vector的内存释放问题,自己写了链表,结果出现了
2016-07-26 09:26:30
1220
转载 C++,链表类,链表模板类
http://www.cnblogs.com/jingmoxukong/p/3827011.html目录采用模板类实现的好处是,不用拘泥于特定的数据类型。就像活字印刷术,制定好模板,就可以批量印刷,比手抄要强多少倍!此处不具体介绍泛型编程,还是着重叙述链表的定义和相关操作。 链表结构定义定义单链表的结构可以有4方式。如代码所示。
2016-07-22 10:48:53
1960
原创 opencv 3.0 编译
首先参考http://www.07net01.com/2014/09/66490.html进行初步编译编译会报错:CMake Error at 3rdparty/ippicv/downloader.cmake:97 (message): ICV: Failed to unpack ICV package from D:/Program Files/opencv/
2016-07-14 13:37:18
921
转载 OpenMP多线程编程技术
循环并行化1、循环并行化编译指导语句的格式 循环并行化是使用OpenMP来并行化程序的最重要的部分,它是并行区域编程的一个特例。在C/C++语言中,循环并行化语句的编译指导语句格式如下:#pragma omp parallel for [clause[clause…]]for( index = first ; test_expression ; inc
2015-01-27 21:46:09
1596
转载 Openmp补遗之同步
一、 atomic编译指导语句指定特殊的存储单元将被原子地更新,不允许多个线程同时执行更新操作。如果不写,其结果将不可预料。谨之慎之二、critical编译指导语句临界区声明方法#pragma omp critical [(name)] //[]表示名字可选{//并行程序块,同时只能有一个线程能访问该并行程序块}
2015-01-27 21:16:12
657
转载 OpenMP3.0的新特性Task指令基础
从OpenMP3.0开始,OpenMP增加了task指令,这是OpenMP3.0中最激动人心的一个新特性。本文的”术语“大多数是根据个人理解用词,不保证用词准确性。(1)task基础OpenMP Tutorials: 任务构造https://computing.llnl.gov/tutorials/openMP/#Task从功能上说:1. The TAS
2015-01-25 21:49:46
1229
转载 OpenMP中omp_set_nested()和OMP_NESTED环境变量详解
(1)类似于omp_set_dynamic(http://blog.youkuaiyun.com/gengshenghong/article/details/7003688),omp_set_nested()的参数实际是一个表示布尔的变量,可以覆盖OMP_NESTED的设置。(2)OpenMP的嵌套并行和默认设置omp_set_nested()用于设置是否允许OpenMP进行嵌套并行,默认的设
2015-01-25 21:44:59
1744
转载 OpenMP中omp_set_dynamic()和OMP_DYNAMIC环境变量详解
理解这部分内容之前,先要理解omp_get_num_threads()和omp_get_max_threads()的含义和区别,参考:http://blog.youkuaiyun.com/gengshenghong/article/details/7003110(1)OMP_DYNAMIC环境变量:取值为TRUE和FALSE,定义是否动态设定并行区域执行的线程,默认为false。根据M
2015-01-25 21:38:57
784
转载 OpenMP中几个容易混淆的函数(线程数量/线程ID/线程最大数)以及并行区域线程数量的确定
说明:这部分内容比较基础,主要是分析几个容易混淆的OpenMP函数,加以理解。(1)并行区域数量的确定:在这里,先回顾一下OpenMP的parallel并行区域线程数量的确定,对于一个并行区域,有一个team的线程去执行,那么该分配多少个线程去执行呢?OpenMP的遇到parallel指令后创建的线程team的数量由如下过程决定:1. if子句的结果
2015-01-25 21:23:04
1243
转载 OpenMP并行构造的schedule子句详解
schedule子句是专门为循环并行构造的时候使用的子句,只能用于循环并行构造(parallel for)中。根据OpenMP Spec(http://openmp.org/mp-documents/OpenMP3.1-CCard.pdf)可以知道:schedule的语法为:schedule(kind[, chunk_size])kind:• static:
2015-01-25 21:12:51
2961
转载 OpenMP中数据属性相关子句详解(3): reduction子句
reduction的作用:A private copy for each list variable is created for each thread. At the end of the reduction, the reduction variable is applied to all private copies of the shared variable, and the fi
2015-01-25 21:12:00
1282
1
转载 OpenMP中数据属性相关子句详解(2):shared/default/copyin/copyprivate子句的使用
(1) sharedshared子句可以用于声明一个或多个变量为共享变量。所谓的共享变量,是值在一个并行区域的team内的所有线程只拥有变量的一个内存地址,所有线程访问同一地址。所以,对于并行区域内的共享变量,需要考虑数据竞争条件,要防止竞争,需要增加对应的保护,这是程序员需要自行考虑的。下面的例子是一个求和的并行实现,使用共享变量,由于没有采取保护,会有数据竞争:
2015-01-25 21:06:45
1036
转载 OpenMP指令之THREADPRIVATE指令
OpenMP Tutorial:https://computing.llnl.gov/tutorials/openMP/#THREADPRIVATE(1)指令作用:threadprivate指令用于指定文件范围的全局变量成为线程在多个并行块之间执行的本地变量或持久变量。简单的理解,对于一些全局变量,可以用此指令指定全局变量,使得每一个线程都能有此全局变量的独立的拷贝,并且互
2015-01-25 20:46:33
1856
转载 OpenMP中数据属性相关子句详解(1):private/firstprivate/lastprivate/threadprivate之间的比较
private/firstprivate/lastprivate/threadprivate,首先要知道的是,它们分为两大类,一类是private/firstprivate/lastprivate子句,另一类是threadprivate,为指令。(PS:有些地方把threadprivate说成是子句,但是实际来讲,它是一个指令。)可以参考http://blog.youkuaiyun.com/gengshe
2015-01-25 19:28:53
798
转载 线程化的性能障碍:它们将给 OpenMP 代码带来什么影响?
为何要线程化,线程化对性能有何影响?您可能出于以下三个原因而线程化应用程序。每个对性能评测的要求都不同。能更快的执行同一工作:如果应用程序负载固定(如,对静态照片应用某种效果),我们可以通过线程化更快地完成工作。评测此代码时,我们将记录执行时间和通过线程化实现的加速比。执行更多的工作:如果将应用程序扩展到执行更多个负载相同的工作(例如,更新较大的像素缓冲区),或将不同的工作添加
2015-01-25 19:26:15
1795
转载 OpenMP与C++:事半功倍地获得多线程的好处
OpenMP与C++:事半功倍地获得多线程的好处(上)KangSu Gatlin & Pete Isensee 著赖勇浩 译在并行计算领域有一个广为流传的笑话——并行计算是未来之事并且永远都是。这个小笑话几十年来一直都是对的。一种类似的观点在计算机架构社区中流传,处理器时钟速度的极限似乎近在眼前,但时钟速度却一直在加快。多核革命是并行社区的乐观和架构社区的悲观的冲突。
2015-01-25 13:49:47
2205
转载 OpenMP: OpenMP概述
根据计算平台和规模的不同,并行计算可以分为两种:第一种是基于单一计算机系统的多核处理器或多处理器进行多线程并行计算,采用共享存储的方式,主要的标准有OpenMP,如下左图所示;第二种就是基于多台计算机组件的集群(Cluster)计算系统进行并行计算,采用消息传递方式,主要的标准有MPI,如下右图所示。本文将主要介绍多线程方式的并行计算。 首先来了解一下单核处理器
2015-01-25 12:19:00
795
转载 OpenMP嵌套并行
OpenMP中不建议使用并行嵌套,如果一个并行计算中的某个线程遇到了另外一个并行分支,程序运行将会变得不稳定。将一个完整的工作任务通过一组并行线程分成若干小任务,每个线程只执行指定给它的那段代码,并没用多余的线程去做其他的工作,即使并行计算中正在运行的某个线程遇到了一个新的并行分支,通过分割这个任务形成更多的线程,这并没有任何实际意义。因此,嵌套并行在OpenMP中将不考虑。OpenMP在处理多级
2015-01-25 12:16:54
2421
转载 OpenMP: sections分段并行
除了循环结构可以进行并行之外,还可以进行分段并行(parallel section)。迄今为止,每谈到如何去并行一个程序时,我们主要关心的是在同一时间将一个任务划分成多个然后用多线程去完成。然而,如果这个程序的一系列操作中后面的计算并不依赖于前面的计算,意思就是说它们之间相互并不依赖,这将有利于分配不同的任务给不同的线程去执行。当然,这对于那些执行过程非常短(总体计算量非常小)或程序本身具有很强的
2015-01-25 11:54:46
3702
1
转载 OpenMP: 循环结构的并行
在科学和工程应用中,许多程序都要在循环执行上花大量的时间,如Fortran中的do循环和C语言中的for循环,通过并行中的loop-level可以减少这些循环的运行时间。OpenMP提供了parallel for或parallel do指令来对循环结构进行并行处理,这个指令可以用于大部分的循环结构,它也是OpenMP中使用最多和最频繁的指令。当然,程序员必须清楚哪些循环是可以进行并行的。
2015-01-25 11:42:13
2759
转载 OpenMP并行数目与并行体对运行效率的影响
接下来再做一个测试,将并行和串行的循环次数设置为100,即将上例的main函数中:for(int i = 0; i 更改为:for(int i = 0; i 然后分别运行10次,其结果如下表所示:次数串行并行10.002850030.0073500872
2015-01-25 10:54:41
7724
4
转载 VS2010配置使用OpenMP
一个简单的OpenMP例子 首先启动VisualStudio 2010,新建一个C++的控制台应用程序,如下图所示: 然后在项目解决方案资源管理器上选择项目名称,点击右键,选择“属性”,如下图所示: 然后在属性页上左侧选择“配置属性”——“C/C++”——“语言”,然后在右侧“OpenMP支持”后选
2015-01-25 10:20:54
1114
1
转载 OpenMP循环并行化for的约束条件
OpenMP可以方便地对for循环进行并行化,然而不是所有的for循环都可以进行并行化。下面几种情况是不能进行并行化的:1. for循环中的循环变量必须是有符号整形。例如,for (unsigned int i = 0; i 2. for循环中比较操作符必须是, >=。例如for (int i = 0; i != 10; ++i){}会编译不通过;
2015-01-25 10:14:59
1361
转载 OpenMP中的常用函数
1、设置线程数目其定义如下:void omp_set_num_threads(int num_threads);通过该函数来指定其后用于并行计算的线程数目,其中参数num_threads就是指定的线程数目。2、获取线程数目其定义如下:int omp_get_num_threads();通过该函数可以获取当前运行组中的线程数目,如果是在并行结构
2015-01-25 09:11:43
3421
转载 OpenMP 环境变量
OpenMP 规范定义了四个用于控制 OpenMP 程序执行的环境变量。下表对它们进行了概括。表 2–1 OpenMP 环境变量环境变量 功能 OMP_SCHEDULE为指定了 RUNTIME 调度类型的 DO、PARALLEL DO、for、parallel for 指令/pragma 设置调
2015-01-24 22:52:16
798
转载 OpenMP 嵌套并行操作的特性
1 执行模型 OpenMP 采用 fork-join(分叉-合并)并行执行模式。线程遇到并行构造时,就会创建由其自身及其他一些额外(可能为零个)线程组成的线程组。遇到并行构造的线程成为新组中的主线程。组中的其他线程称为组的从属线程。所有组成员都执行并行构造内的代码。如果某个线程完成了其在并行构造内的工作,它就会在并行构造末尾的隐式屏障处等待。当所有组成员都到达该屏障时,这些线程
2015-01-24 22:26:50
595
转载 OpenMP: OpenMP多核编程配置与测试
现在的集成开发环境很好的支持了市面上的多数多核CPU,比如在intel双核CPU的系统上安装好vs2008后,第一,在项目属性-c++-语言中选择支持openmp第二,在环境变量中加入OMP_NUM_THREADS变量赋值2 可以了,打开vs2008,新建一个console程序。 敲入下面的例子,相信我们都能看懂的:
2015-01-24 22:20:08
905
转载 VC/MFC 文件拷贝与删除
VC/MFC 文件拷贝与删除2011-06-23 09:45 1343人阅读 评论(0) 收藏 举报pathsystemstruct1、文件拷贝///////////////////////////////////MFC版 文件拷贝/////////////////////////////////void FileCopyTo(CString sou
2014-02-21 10:59:43
715
转载 VS2010下编译OpenCV2.4.6静态库
VS2010下编译OpenCV2.4.6静态库分类: OpenCV2013-10-17 11:12 412人阅读 评论(0) 收藏 举报1、 从 http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.3/ 下载最新的OpenCV2.4.6;2、 将OpenCV-2.4.6.0.exe
2014-01-15 13:38:14
1914
原创 String* 转char*
System::String^ s = "duan"; char* chars = (char*)(Marshal::StringToHGlobalAnsi(s)).ToPointer();pointerPC[i].setName((char*)(void*)System::Runtime::InteropServices::Marshal::StringToHGlobalAns
2014-01-06 11:24:05
564
wo Dimensional Phase Unwrapping Theory Algorithms and Software
2015-09-05
Spartan-3A DSP 1800A平台用户手册.pdf
2011-04-13
spartan-3 fpga coding techniques part2.pdf
2009-12-28
spartan-3 fpga coding techniques part1.pdf
2009-12-28
有备而来的49个问题
2008-09-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人