<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[潘安   BLOGS]]></title><description><![CDATA[學術渣的自我救贖]]></description><link>https://blog.youkuaiyun.com/panan160</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; panan160]]></copyright><item><title><![CDATA[C++11 多线程2——Mutex的错误使用]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/48048971</link><guid>https://blog.youkuaiyun.com/panan160/article/details/48048971</guid><author>panan160</author><pubDate>Fri, 28 Aug 2015 11:06:45 +0800</pubDate><description><![CDATA[本系列文章主要介绍C++11
中多线程的使用方法，主要参考书籍为《C++Concurrency IN Action》。
 
为了保证多线程访问数据的安全性，一种通常的做法是对需要保护的数据上锁，使用mutex保证互斥访问。可以使用的做法是调用lock()和unlock()函数，但是我们更加推荐使用模板类std::lock_guard，在该类的构造函数中完成lock()，而在析构函数中完成un]]></description><category></category></item><item><title><![CDATA[脱离OpenCV Manager]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/44567549</link><guid>https://blog.youkuaiyun.com/panan160/article/details/44567549</guid><author>panan160</author><pubDate>Mon, 23 Mar 2015 19:34:44 +0800</pubDate><description><![CDATA[脱离OpenCV Manager
     做为OpenCV4Android的系列博客，本文将给出一个打包OpenCV API到APK使Android应用脱离OpenCV-Manager的例子。
     首先依然强调一点：不要盲目相信任何“大神”的博客，官方文档才是最佳的参考资料。
     关于脱离OpenCV Manager的方法，官方文档给出了一个解决方案，链接如下：
http:/]]></description><category></category></item><item><title><![CDATA[机器学习（6）——Logistic回归]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/44276757</link><guid>https://blog.youkuaiyun.com/panan160/article/details/44276757</guid><author>panan160</author><pubDate>Sun, 15 Mar 2015 14:45:07 +0800</pubDate><description><![CDATA[机器学习（6）——Logistic回归

一、Sigmoid函数
    首先阐述一下回归的概念，假设现在有一些数据点，我们用一条直线对这些点进行拟合，这个过程就叫做回归。
利用Logistic回归进行分类的主要思想是：根据现有数据对分类边界建立回归公式，以此进行分类。
我们想要的函数应该是，能接收所有的输入，然后预测出类别。在二分类的情况下上述函数输出0或1。最典型的函数就是单位阶跃函]]></description><category></category></item><item><title><![CDATA[反距离权重法生成DEM（利用KD-tree实现KNN算法）]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/44203667</link><guid>https://blog.youkuaiyun.com/panan160/article/details/44203667</guid><author>panan160</author><pubDate>Wed, 11 Mar 2015 20:13:04 +0800</pubDate><description><![CDATA[一看到标题可能就郁闷了，什么是KD-tree，什么是KNN。没关系我会一一解释，生成DEM这个程序我写了好久也主要在完成KNN这个算法。
不过，首先用ArcGIS看一下我们数据点的分布（图1）以及最终生成的DEM（图2）。

反距离权重插值方法是一种局部插值方法，它假设未知值的点受较近控制点的影响比较远控制点的影响更大。这种方法通常用在计算机辅助制图方面。影响的程度（权重）用点之间距离乘方的]]></description><category></category></item><item><title><![CDATA[机器学习—朴素贝叶斯进行文本分类]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/44180459</link><guid>https://blog.youkuaiyun.com/panan160/article/details/44180459</guid><author>panan160</author><pubDate>Tue, 10 Mar 2015 20:49:19 +0800</pubDate><description><![CDATA[一、贝叶斯决策理论
    给定一个点（x,y）要决定属于哪一个类别（类别1，类别2）
我们一般的处理方法是：
    如果：P1(x,y)>P2(x,y)
类别为1
    如果：P2(x,y)>P1(x,y)
类别为2
 
    这就是贝叶斯决策理论的核心思想——选择具有最高概率的决策。
 
二、条件概率
    条件概率P(a|b)表示在事件b已经发生的情况下事件a出]]></description><category></category></item><item><title><![CDATA[机器学习（4）——KNN算法及手写数字的识别（二）]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/44137371</link><guid>https://blog.youkuaiyun.com/panan160/article/details/44137371</guid><author>panan160</author><pubDate>Sun, 08 Mar 2015 21:15:30 +0800</pubDate><description><![CDATA[机器学习——KNN算法及手写数字的识别（二）
    说的是手写数字识别，你拿一堆
    

这样的“图片”去识别，分类有什么意思呀。
    在上一遍博文中我们有了一个对手写数字采用kNN算法的分类器，这篇博文将利用该分类器完成一个完整的手写数字分类功能。程序的输入为我们手机拍摄的一张照片如下图所示：

    

    为了使用我们训练好的分类器，我们需要对这张照片进行处]]></description><category></category></item><item><title><![CDATA[机器学习(3)——KNN算法及手写数字的识别（一）]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/44114381</link><guid>https://blog.youkuaiyun.com/panan160/article/details/44114381</guid><author>panan160</author><pubDate>Sat, 07 Mar 2015 10:37:06 +0800</pubDate><description><![CDATA[机器学习——KNN算法及手写数字的识别（一）

邻近算法，或者说K最近邻(kNN，k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻，就是k个最近的邻居的意思，说的是每个样本都可以用它最接近的k个邻居来代表。
搬出一张最常见的图，来直观的展示什么是KNN算法：


  kNN比较好理解，其一般过程如下：
    对未知类别属性的数据集中的每]]></description><category></category></item><item><title><![CDATA[机器学习（2）——Adaboost上]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/42430429</link><guid>https://blog.youkuaiyun.com/panan160/article/details/42430429</guid><author>panan160</author><pubDate>Mon, 05 Jan 2015 20:43:08 +0800</pubDate><description><![CDATA[机器学习（2）——Adaboost 上]]></description><category></category></item><item><title><![CDATA[机器学习（1）——常用术语]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/42418243</link><guid>https://blog.youkuaiyun.com/panan160/article/details/42418243</guid><author>panan160</author><pubDate>Mon, 05 Jan 2015 09:40:54 +0800</pubDate><description><![CDATA[机器学习（1）——常用术语

欠拟合：模型假设太严格，所以模型不能拟合到实际数据
解决方案：使用更多的特征有利于拟合，选用一个学习能力更好的拟合算法
 
过拟合：算法不仅学习了数据，而且吧噪声也当做信号学习，这样算法推广能力差
解决方案：增加训练数据量可使得拟合曲线更光滑，减少特征数量降低过拟合程度，使用学习能力差的算法。]]></description><category></category></item><item><title><![CDATA[OpenCV 笔记一：微分、梯度，Sobel、角点及Sift特征点]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/41891291</link><guid>https://blog.youkuaiyun.com/panan160/article/details/41891291</guid><author>panan160</author><pubDate>Fri, 12 Dec 2014 11:04:40 +0800</pubDate><description><![CDATA[题记：发现之前写的代码很多都不知道放在哪里了，时间长了看过的东西，写的代码也就忘了。有一种忙了好一阵子却没什么收获的感觉，因此从今天开始把学习到的东西都整理下来，先优快云，有成熟的项目代码后在放到Github上。

一、微分、梯度
            
 数学函数的微分可以有不同术语的定义，但任何定义都必须保证以下几点：
一阶微分：
1、在平坦段（灰度不变的区域），微分值为0
]]></description><category></category></item><item><title><![CDATA[OpenCV 3.0 使用GDAL例程]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/40999459</link><guid>https://blog.youkuaiyun.com/panan160/article/details/40999459</guid><author>panan160</author><pubDate>Tue, 11 Nov 2014 02:20:39 +0800</pubDate><description><![CDATA[OpenCV3.0 使用GDAL例程
OpenCV3.0 开始逐步加入对GDAL的支持，为了进一步学习，先尝试了下OpenCV3.0库里提供的一个例子。
源码我不在贴出来了，大家到
https://github.com/Itseez/opencv/blob/a602185fb647b30bbd3d9938954965a4ca34b40a/samples/cpp/tutorial_code/H]]></description><category></category></item><item><title><![CDATA[GIS中最短路径分析——Dijkstra算法]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/38842523</link><guid>https://blog.youkuaiyun.com/panan160/article/details/38842523</guid><author>panan160</author><pubDate>Tue, 26 Aug 2014 09:19:32 +0800</pubDate><description><![CDATA[算法思想]]></description><category></category></item><item><title><![CDATA[OpenCV4Android 2，脱离JNI的C++接口]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/24271917</link><guid>https://blog.youkuaiyun.com/panan160/article/details/24271917</guid><author>panan160</author><pubDate>Mon, 21 Apr 2014 21:44:03 +0800</pubDate><description><![CDATA[OpenCV4Android 2，脱离JNI的C++接口
——让你的OpenCV程序远离Android]]></description><category></category></item><item><title><![CDATA[第一个OpenCV4Android]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/23828591</link><guid>https://blog.youkuaiyun.com/panan160/article/details/23828591</guid><author>panan160</author><pubDate>Wed, 16 Apr 2014 10:48:10 +0800</pubDate><description><![CDATA[做第一个OpenCV4Android程序的时候遇到很多问题，网上的资料也很杂，开发方式也很多，这里我仅给出一个使用Native/C++开发Andriod平台下OpenCV的案例。
一、需要的软件如下（百度到各官网下载即可）：
1、adt-bundle-windows-x86_64-20140321
（就是集成ADT CDT等环境的eclipse，也是Google所推荐的开发Android应用]]></description><category></category></item><item><title><![CDATA[C++正则表达式]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/22694651</link><guid>https://blog.youkuaiyun.com/panan160/article/details/22694651</guid><author>panan160</author><pubDate>Mon, 31 Mar 2014 21:40:30 +0800</pubDate><description><![CDATA[关于正则表达式的由来及所有语法在这里不做介绍，大家可以参照下面网址中给出的例子。
http://www.jb51.net/tools/zhengze.html
这里将我程序中涉及到的内容，作为一个例子写出来：
首先，大家都知道正则表达式最核心的工作就是可以匹配文本，那么我们也就可以利用正则表达式来提出文件中的“脏数据”
待处理的数据如下：

146573.100000        3]]></description><category></category></item><item><title><![CDATA[C风格读取文件]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/22687107</link><guid>https://blog.youkuaiyun.com/panan160/article/details/22687107</guid><author>panan160</author><pubDate>Mon, 31 Mar 2014 18:46:39 +0800</pubDate><description><![CDATA[最近写的程序很多涉及文件读取，学习到的相关内容整理如下：
首先我们整理有关C风格的文件读取。
1、文件打开
fopen
FILE
*fopen(const
char*filename,
const char
*mode
);
第一个参数文件名，第二个参数打开方式
例如：

FILE *fp=fopen("123.txt","r");
关于第二个参数，主要方式有以下几种：]]></description><category></category></item><item><title><![CDATA[《COM技术内幕》 学习二]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/21243843</link><guid>https://blog.youkuaiyun.com/panan160/article/details/21243843</guid><author>panan160</author><pubDate>Fri, 14 Mar 2014 17:51:09 +0800</pubDate><description><![CDATA[上一部分内容介绍了COM最核心的概念接口，当然那不是真正意义上的COM接口，真正的COM接口都是从IUnknown接口继承的，并且其vtbl指针的前三个函数必须是：QueryInterface()、AddRef()、Release()。
1、IUnknown接口
       
首先一切接口都要继承自IUnknown接口，其在Unknwn.h中的定义摘录如下：

interface Iu]]></description><category></category></item><item><title><![CDATA[《COM技术内幕》学习一]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/21241041</link><guid>https://blog.youkuaiyun.com/panan160/article/details/21241041</guid><author>panan160</author><pubDate>Fri, 14 Mar 2014 16:31:20 +0800</pubDate><description><![CDATA[两年前大三下学期，听完崔神的GIS中的现代软件技术，和很多同学一样把《COM技术内幕》《Visual
 C++开发COM程序》奉为经典。但是苦于当初知识水平有限，又没有写过任何的COM组件甚至没有用过COM组件，这些书都是翻了两页就看不下去了，对于我来说实在是太晦涩。
     
前几天用C++做了些ArcGIS的二次开发，对组件有了点使用体会，反过来在看《COM技术内幕》有种豁然开朗的感觉]]></description><category></category></item><item><title><![CDATA[鹰眼地图的实现（C++）]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/20811927</link><guid>https://blog.youkuaiyun.com/panan160/article/details/20811927</guid><author>panan160</author><pubDate>Sun, 09 Mar 2014 01:16:30 +0800</pubDate><description><![CDATA[关于上一篇博文的补充：

对于MapControl中的事件响应函数，以下两种形参声明方式等价：
voidOnExtentUpdated(const VARIANT FAR&displayTransformation,VARIANT_BOOL sizeChanged,const
VARIANT FAR& newEnvelope);
 
voidOnExtentUpdated(VARIAN]]></description><category></category></item><item><title><![CDATA[手动添加MapControl中的消息响应函数]]></title><link>https://blog.youkuaiyun.com/panan160/article/details/20073447</link><guid>https://blog.youkuaiyun.com/panan160/article/details/20073447</guid><author>panan160</author><pubDate>Thu, 27 Feb 2014 21:25:05 +0800</pubDate><description><![CDATA[在利用ArcGIS二次开发实现“鹰眼”功能时发现在MapControl控件不能自动添加控件事件（OnMapReplaced、OnExtentUpdated等）。咨询ESRI支持中心后给出的回答是：
“在ArcGIS 10.0之后对于MFC框架的支持出现了一些障碍，导致ArcGISEngine中的ActiveX控件无法注册。”
    既然这样那么我们就动手自己添加我们所需的响应函数。]]></description><category></category></item></channel></rss>