我们参考caffe中ImageNet的例子来完成图像分类,我们的流程如下

1.参考ImageNet的代码,构建我们自己的数据集,jpg格式的图像分为train和val,即训练集和测试集

2.在文本文件中列出图像和标注

3.修改create_convert脚本,将图像转化为lmdb格式,注意,一定是jpg格式的图像,如果没有进行大小归一化,最好在脚本中进行缩放操作

4.使用make_mean脚本,计算图像均值

5.修改solver_prototxt文件和train_val_prototxt文件中的参数,进行训练…

        Caffe的作者是贾扬清(伯克利大学博士期间成果),其在深度学习科学研究中有着非同一般的地位,尤其是其代码在github上开源,以及CUDA加速的使用,使得普通学者也可以较为轻松的进行训练,介绍就不多说了,作为Caffe的第一课,首先就是Caffe环境配置、编译以及导入IDE中方便调试了,我们开始吧。…

        对于MFC绘图,博主也没有什么真知灼见,只是将自己在学习MFC绘图中遇到的问题进行整理,大部分内容并非原创,博主都在醒目位置给出了出处。包含的内容有DC设备描述表、绘图基础、双缓冲、鼠标控制和MFC中使用OpenGL。希望能有帮助,我们开始吧。…

        在VS2010之后陆续加入许多控件,其中就有看上去比较好看的vslistbox,然而vslistbox的资料非常少,这篇博客就来稍稍解读一下vslistbox控件。vslistbox与其它list控件不同,它们的类从CStatic的继承时已经分开了,并且vslistbox比较封闭,没有提供任何消息时间和命令,我们使用该控件的唯一方法是子类化CVSListBox类,通过重载其中虚函数的方式来实现我们的功能。虽然vslistbox非常封闭,但是我们依然可以从微软MSDN的文档中窥见一隅,实现一些并不十分复杂的功能。…

        点击下载,解压好之后只有一个usr目录,其中包含了opencv、opengl、glew、freeglut、glog、protobuf等,你只需要经过下列三个步骤,就可以一次性永久配置好环境,当然,如果你对库原本就有一些理解,那你应该马上就懂了,如果你常在Linux上配置环境,那你会发现我做的事情其实很简单,就是把各个库集中起来,有点类似于linux中库的安装方法,因此配置变得非常便捷了,博主采用全静态编译,在使用时只需要注意使用静态库就可以了。让我们开始吧。…

        现在有很多介绍protobuf的文章,而本篇博客与其它文章的不同在于,为不同平台及不同编译环境下适配protobuf提供一体化的解决方案,包括linux,windows系统,同时在Windows系统中控制台 MFC等框架下也会有不同的编译环境,比如你可以选择使用静态库还是动态库等,偶尔,我们还会需要google的其它库,比如glog,接下来将进行详细介绍。…

        Mat是opencv中的图像格式,如果想要图像在MFC中显示,将Mat格式转为MFC支持的CImage格式是一种较为优秀的解决方案,这篇博客就来介绍在MFC中显示Mat图像的方法。虽然原理相同,但博主还是要介绍两种方式:一种是通过子类化显示控件的方式进行显示,第二种是在父窗口中调用。如果你做的工程比较庞大,博主建议使用子类化控件的方法,当然,如果你是小工程,博主也依然建议你使用子类化的方法,这样不仅使代码结构简单封装良好,而且方便了控件的拓展。…

        在前面的博客中,我们介绍了在MFC中使用OpenGL绘图,现在我们需要将OpenGL窗口中所展示的图形绘制出来,或者保存为图像,坊间使用的很多代码都过于复杂,冗余的代码都浪费在了手写Bmp格式,内存数据格式转换等问题上。我们通常需要简洁强大且高校的代码,于是opencv库成为了我们的首选,并将这些功能封装在类中使得其易于使用。感谢这篇博客的内容,建立了glGraber类,使得我们可以摆脱繁重的代码,特此收录。…

        MFC中的Mene和Toolbar都是常用的控件,如果你觉得按钮控件不容易组织结构,Menu和Toolbar将是一个不错的选择,你可以参照微软官方的代码添加控件,这篇不可介绍的是最简方法,直接开始吧。过程分为三步:

        1.在资源管理器中添加Toolbar控件

        2.在控件编辑器中添加图标和按钮

        3.为按钮添加消息事件…

mfcandopengl老外的教程果然还是非常赞的,强烈推荐原版,这篇博客简单介绍一下步骤:

        1.新建MFC工程

        2.添加Picture Control控件

        3.添加一个OpenGL控件类

        4.在MFC中使用OpenGL控件

        获取博主编译的测试工程(使用VS2013 X64平台,你还需要另外配置OpenGL相关环境),运行效果如左图所示,这个Demo还可以接受鼠标的控制,对模型进行操作。如果你需要多个OpenGL窗口,再实例化这个类,可以很轻易地实现多个窗口的绘制。这里就不翻译老外网站上的教程了,在上面给出了框架搭建的链接,这里就直接介绍该OpenGL类的使用方法吧。…