- 博客(18)
- 收藏
- 关注
原创 windows下编译opencv+opencv_contrib
前言在opencv3中,SURF/SIFT 以及其它的一些东西被移动到了独立的库(opencv_contrib repo)中。此存储库旨在用于开发所谓的“额外”模块,提供功能。 新模块通常没有稳定的API,并且它们没有经过充分测试。 因此,它们不应作为官方OpenCV发行版的一部分发布。所有新模块都应单独开发,并首先在opencv_contrib存储库中发布。 之后,当模块成熟并获得普及时,它...
2018-07-20 19:50:05
657
原创 Search Tweets
前言利用Twitter提供的search APIs获取数据(根据搜索关键词、经纬度、时间等)。目前Twitter官方提供的API有三种:Enterprise search APIs、Premium search API、Standard search API,普通用户一般使用标准API(我申请了Premium search API,不过没通过),它们的申请方式及区别请参考官网。代码...
2018-07-04 16:23:27
1313
1
原创 MPI实例之中值滤波二
前言前段时间写了“MPI实例之中值滤波”,当时测试出来的结果显示并行时间是超过串行时间的,这是因为程序在进程通信上花费太多时间。后来我将点对点通信修改为集合通信,通信时间大大减少。代码修改后的代码如下:#include <gdal_priv.h> #include <iostream>#include "mpi.h"using namespac...
2018-05-09 22:04:09
766
1
原创 gdal--矢量求交
前言最近在帮同学写几个小程序,包括矢量数据求交(Intersection)。网上相关文章很少,所以我参考GDAL官网写了一个完整的程序(裁剪、合并、擦除、更新等功能只要修改代码的求交函数部分,下面会有说明)。代码#include "gdal_priv.h" #include "ogrsf_frmts.h" //for ogr bool VectorIntersection(...
2018-05-08 21:27:30
6756
19
原创 Hadoop3.0集群环境搭建
1 前言项目中大部分数据存储在Hadoop分布式文件系统(HDFS)中,包括MPI并行用到的原始数据,因此我搭建了Hadoop集群进行测试。距离我搭建Hadoop集群也有几个月了,当时只记录下了主要步骤,有些细节可能被遗忘。不过我会用最通俗的语言还原搭建Hadoop3.0集群的流程,尽可能保证所有读者在看了我的文章后可以成功搭建出Hadoop集群。2 准备工作集群中两个节点(m...
2018-05-02 22:28:00
5271
3
原创 MPI实例之中值滤波
前言距上次更新MPI系列博客4个多月,该段时间甚少接触MPI。最近指导师弟进行毕设实验时再次用到,因此还是有必要记录下学习MPI的过程。我上篇博客(MPI集群环境搭建)已经详细介绍了MPI集群搭建的详细流程,当时是在VMware下创建了两个Ubuntu14.04虚拟机,后来我基于实验室OpenStack(关于OpenStack的搭建,后续有时间的话我会另作介绍)平台新建了两个Ubuntu16....
2018-04-27 20:17:21
1171
2
原创 MPI集群环境搭建
本篇文章详细介绍了MPI集群环境搭建的步骤,包括网络环境配置、安装MPICH、SSH免密登录和建立挂载NFS共享目录。
2017-12-04 19:40:44
21743
17
原创 为什么要并行计算?
本文主要介绍了并行的相关背景以及为什么需要并行,并从并行程序的设计方面介绍了并行硬件和并行软件,最后介绍了两种主要的并行系统:基于共享内存的并行和基于分布式内存的并行,顺便谈了谈我个人的理解。
2017-11-28 21:08:16
25521
1
原创 GeoMesa-Accumulo详细配置及实例运行
最近在搭建GeoMesa环境并运行一个Accumulo实例,在这个过程中遇到了很多问题,也感谢网上许多作者的文章,在此分享自己的学习经验,一是为了让初学者少走弯路,而是记录自己的学习,因为这种东西一段时间不搞就会忘得差不多。所以详细记录了整个配置步骤。
2017-09-19 13:18:08
3680
9
原创 银行家算法
银行家算法是Dijkstra给出的具有代表性的死锁避免算法。死锁是指多个进程因竞争系统资源或相互通信而处于永久阻塞状态,若无外力作用,则这些进程都将无法向前推进。为实现银行家算法,系统中必须设置若干数据结构。假定系统中有m个进程(p1,p2,···,Pm),n类资源(R1,R2,···,Rn),银行家算法中使用的数据结构如下:(1)可利用资源向量Available这是一个含有n个元素的数组
2016-06-15 23:49:20
2018
1
原创 相机标定
在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。在大多数条件下这些参数必须通过实验与计算才能得到,这个求解参数的过程就称之为相机标定(或摄像机标定)。无论是在图像测量或者机器视觉应用中,相机参数的标定都是非常关键的环节,其标定结果的精度及算法的稳定性直接影响相机工作产生结果的准确性。因
2016-06-01 01:05:32
4478
3
原创 基数排序算法
基数排序属于"分配式排序",又称"桶子法",它是一种借助多关键字的思想对单逻辑关键字进行排序的算法。基数排序有两种方法:1.最高位优先(Most Significant Digit first)法,简称MSD法:先按k1排序分组,同一组中记录,关键码k1相等,再对各组按k2排序分成子组,之后,对后面的关键码继续这样的排序分组,直到按最次位关键码kd对各子组排序后。再将各组连接起来,
2016-05-14 22:28:59
1280
1
原创 堆排序算法设计与分析
堆排序(HeapSort)是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种。堆分为大根堆和小根堆,是完全二叉树。大根堆要求父结点的值大于或等于子结点的值,小根堆相反。根据大根堆的性质,我们可以知道最大值一定在堆顶,即根结点,利用这一点我们可以将数组建成大根堆。这里我以大根堆为例,小根堆类似。大根堆的主要思想是:先将数组建为大根堆(建堆过程后面介绍),此为初始堆。此时我们
2016-05-11 17:04:36
3771
1
原创 链表实现图书管理系统
之前参照网上的资料用链表实现了图书管理系统,包括简单的增删改查功能以及借书还书功能,我是VC6.0下写的一个控制台程序,格式参照的网上的。// MyLibManSys.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "iostream"struct boo
2016-05-09 01:28:42
21821
9
原创 windows下OpenCV在VS2010中的配置
关于 OpenCV的简绍,各位百度即可,这里我直接介绍OpenCV在VS2010中的配置,希望能对各位起到帮助。首先到官网下载OpenCV,然后双击运行,解压到相应文件夹。这里我解压到了D:\tools目录,自动生成opencv-2.4.8文件夹,我的是2.4.8的版本。1.设置环境变量OpenCV库函数需要通过用户环境变量调用所需要的库文件。计算机->右击->属性->高级系统
2016-05-08 02:30:18
1242
2
原创 排序算法及并行分析
最近学了高性能计算这门课程,老师让用OpenMP、MPI或mapReduce写个大作业。我之前刚好在写排序,于是我就将常用的排序写了一遍并且用OpenMP进行并行,计算加速比等数据进行分析。在这篇文章中我主要介绍八大基本排序的实现原理及代码,以及对这些算法进行改进从而让它们可以并行,并且对他们的性能进行了比较。首先跟大家分享一下我的心得体会,所谓排序算法,就是通过调整元素的位置达到想要的结果。我...
2016-05-05 00:52:11
15450
10
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人