加载中…
博文
(2017-08-23 09:59)
分类: 程序语言
详情:mxArray->MATLAB DATA
对于稠密矩阵来说,由matlab矩阵到C种一维数组存放方式为:由主到次
例4*2*3维矩阵A,在mxArray的数据存放方式
for(d3 = 1;d3 <3;d3++)
{
    for(d2 = 1;d2 < 2;d2++)
    {
        for(d1 = 1;d1 < 4;d1++)
        {
            pdata[index++] = A[d1,d2,d3]
        }
    }
}
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2017-08-09 15:45)
分类: 程序语言
基于新的认识对DLL编程总结一下:
1)在属性页中选择生成文件类型,例dll,lib,exe等;
2)属性->C/C++->代码生成->运行库,用于选择链接vc运行库的方式
     /MT:链接的是VC静态库
     /MD:链接的是VC动态库,此时由vs2010生成的程序到安装vs2015运行提示缺少MSVCR100.DLL,所以还                 要装2010的运行时库
     /DTd和/MDd则是分别链接对应的debug版本的vc运行时库(例MSVCR100d.DLL
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: Mxnet
1)class Node
代表计算图中的一个操作(一个symbol)。
2)NodePtr 
using NodePtr = std::shared_ptr;
存放Node指针的智能指针类
3)struct NodeEntry

4)struct NodeEntryHash

5)struct NodeEntryEqual

6)NodeEntryMap

7)struct NodeAttrs
Node的属性(实际就是参数),NodeAttrs就是解析symbol的参数的
1.成员
const Op *op{nullptr}; // 此Node对应的操作(运算)
std::string name;  //Node的名称
std::vector scalars;
std::unordered_map dict;  //参数字典
any parsed;  //解析后的参数(使用时可以传入任意的参数即dict,取出此Node使用的参数类型保存在                                 //parsed中)
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2017-07-13 18:16)
分类: 程序语言
注意其中C++11才有的部分
1.无参构造函数等于default
例:
class Tuple
{
    Tuple() = default;
}
c++特性,当给类定义构造函数后,类将不会生成默认的构造函数。因此使用此方法可以让定义了构造函数的类生成默认的构造函数。
2.std::copy(begin, end, this->begin());
3.std::swap()
两个重载函数,一个交换两个变量的值,另外一个交换两个数组的值。
4.std::function类(C++11特性)
模板类,同函数指针类似,只是函数指针不是类型安全的。将可调实体封装成对象后,将对象名看成函数使用。详细可查询cplusplus博客
5.智能指针类 std::shared_ptr
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: mathematics
1)矩形边分别平行坐标轴时
思路:分别将矩形宽高投影到坐标轴得到相交的宽高长度,二者相乘得到相交面积。
例:rectangle_1(x_min, y_min, x_max, y_max)
       rectangle_2(x_min, y_min, x_max, y_max)
水平相交长度:w = max(min(r1_x_max, r2_x_max) - max(r1_x_min, r2_x_min), 0)
竖直相交长度:h = max(min(r1_y_max, r2_y_max) - max(r1_y_min, r2_y_min), 0)
相交面积S = w * h
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: Mxnet
.......
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: Mxnet
1)TShape类
class TShape : public Tuple{...}
brief:A Shape class that is used to represent shape of each tensor.
1.dim_t:typedef long long dim_t
2)成员函数
TShape只算是对Tuple轻包装
1.Size()函数
返回tensor中元素个数,即各维度大小的乘积
2.ProdShape(int dimstart, int dimend)
返回指定维度大小乘积
3.继承了Tuple的重载的下标操作符使其能通过下标返回各维度的大小。
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: Mxnet
如果只是去欣赏代码的话心情应该是:毕竟大神,牛掰。但要去看懂实现了什么时候只想说MMP。千里之行始于足下,我等菜笔还是从小着手吧。
1)class Tuple
作用:动态大小的数组用于存放tensor的维数和shape。
2)成员变量
static const uint32_t kStackCache = 4;
uint32_t ndim_{0};
uint32_t num_heap_allocated_{0};
ValueType data_stack_[kStackCache];
ValueType* data_heap_{nullptr};
1.uint32_t  无符号整型
2.mxnet中的张量大多小于等于4维,最常见的数据(cv任务)为(batch_size,channel,heigit,width)
3.ndim_:张量维数
4.data_stack_:当tensor维数少于等于4时使用data_stack_存放tensor的shape,当然成员函数的操作也是操作的它
5.data_heap_:当tensor维
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: 程序语言
1)使用说明
pyrcc4 -o resources.py resources.qrc

python labelImg

# cd到labelImg目录
# 第一条指令只在第一次使用时需要执行
# 此后使用只需要执行第二个指令

2)预定义类名为中文时保存xml出现乱码问题
预定义类名存在data\predefined_classes.txt中,逐行存放
labelImg在生成xml时,使用python的xml.etree.ElementTree进行添加xml子项。但是其生产的xml字符串是一行排放,而不是一个标签一行有格式的排放,所以作者使用lxml对生成的xml字符串进行格式化。
1.原始代码
rough_string = ElementTree.tostring(elem, 'utf8')
root = etree.fromstring(rough_string)
return etree.tostring(root, pretty_print=True)
# 由上可以看出rough_string是utf-8编码,而由lmxl得到格式化后的xml字符串并没指定utf-8编码。而再保存字
# 符串却以utf-8保存就出
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: 程序语言
用VS2015开发Linux程序详细教程-配置篇
补充:
1)开启ssh服务
  安装ssh:sudo apt-get install openssh-server
2)查看ssh启动
  打开'终端窗口',输入'sudo ps -e |grep ssh'-->回车-->有sshd,说明ssh服务已经启动,如果没有启动,输入'sudo service ssh start'-->回车-->ssh服务就会启动。
3)使用gedit修改配置文件“/etc/ssh/sshd_config”
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
个人资料
陈奇鹏
陈奇鹏
  • 博客等级:
  • 博客积分:0
  • 博客访问:7,286
  • 关注人气:2
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
访客
加载中…
好友
加载中…
评论
加载中…
  

新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有