C++语言之应用initializer_list实现可变参数的函数

C++编程语言之initializer_list是C++11提供的一种新类型,其定义于<initializer_list>头文件中,此头文件是工具库的一部分,用于处理参数数量可变但类型相同的情况。initializer_list提供如下操作:

initializer_list<T> lst; //默认初始化;T类型元素的空列表

initializer_list<T> lst{a, b, c, d, ...};
//lst的元素数量和初始值一样多;lst的元素是对应初始值的副本;列表中的元素是const

lst.size(); //列表中的元素数量

lst.begin(); //返回指向lst中首元素的指针

lst.end(); //返回指向lst中尾元素下一个位置的指针

Continue reading

OpenCV计算机视觉编程之人脸识别的示例(Python版)

计算机视觉之人脸识别看起来很高大上,但是用OpenCV解决很方便,OpenCV真的太强大了。OpenCV中人脸检测使用的是 detectMultiScale函数,它可以检测出图片中所有的人脸,并将人脸用vector保存各个人脸的坐标、大小(用矩形表示),函数由分类器对象调用:
Continue reading

Python语言程序设计之MD5加密

Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。MD5即 Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致,是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。
Continue reading

深度学习之利用TensorFlow实现简单的卷积神经网络(MNIST数据集)

卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(Deep Learning)的代表算法之一。MNIST数据集是机器学习领域中非常经典的一个数据集,由60000个训练样本和10000个测试样本组成,每个样本都是一张28*28像素的灰度手写数字图片。
Continue reading

深度学习之利用TensorFlow实现简单的全连接层网络(MNIST数据集)

Tensorflow是一个基于数据流编程(Dataflow Programming)的符号数学系统,被广泛应用于各类机器学习(Machine Learning)算法的编程实现,其前身是谷歌的神经网络算法库DistBelief。MNIST数据集是机器学习领域中非常经典的一个数据集,由60000个训练样本和10000个测试样本组成,每个样本都是一张28*28像素的灰度手写数字图片。
Continue reading