精华内容
下载资源
问答
  • 学习代码总结,总结下学习的代码学习代码总结,总结下学习的代码学习代码总结,总结下学习的代码学习代码总结,总结下学习的代码学习代码总结,总结下学习的代码学习代码总结,总结下学习的代码学习代码总结,总结下...
  • 数学建模常用代码总结-Python&MATLAB

    万次阅读 多人点赞 2020-05-16 14:53:10
    数学建模常用代码总结-Python&MATLAB 数学建模过程中有许多可复用的基础代码,在此对 python 以及 MATLAB 中常用代码进行简单总结,该总结会进行实时更新。 一、文件读取 python (pandas) 文件后缀名(扩展名...

    数学建模常用代码总结-Python&MATLAB

    数学建模过程中有许多可复用的基础代码,在此对 python 以及 MATLAB 中常用代码进行简单总结,该总结会进行实时更新。

    一、文件读取

    • python (pandas)

      文件后缀名(扩展名)并不是必须的,其作用主要一方面是提示系统是用什么软件打开,另一方面提示文件内容格式。如.txt, .csv, .tsv 文件均为纯文本文件,只是 .csv, .tsv 说明了数据的分割方式分别为,\t 。既然都是文本文件,那就都可用 pandas.read_csvpandas.read_table 等进行读取,这里采用 pandas.read_csv

      .txt 文件

      import pandas as pd
      tsvfile = pd.read_csv('filename.txt')
      tsvfile = pd.read_csv('filename.txt',skiprows=1)#跳过首行
      

      .csv 文件

      import pandas as pd
      tsvfile = pd.read_csv('filename.csv')
      tsvfile = pd.read_csv('filename.csv',skiprows=1)#跳过表头
      

      .tsv 文件

      import pandas as pd
      tsvfile = pd.read_csv('filename.tsv', sep='\t')
      

      .json 文件

      import pandas as pd
      jsonfile = pd.read_json('filename.json', orient = 'records')
      

      .csv 文件转.json 文件

      import csv
      import json
      csvfile = open('filename.tsv',r)
      jsonfile = open('filename.json',w)
      
      fieldnames = ("key1","key2","key3")
      reader = csv.DictReader(csvfile,fieldnames) 
      
      for row in reader:
          json.dump(row,jsonfile)
          jsonfile.write('\n')
      

      .xlsx 文件

      excel 是二进制文件,它保存有关工作簿中所有工作表的信息,也可对数据进行有关操作。

      import pandas as pd
      # 读取 Excel 数据,选取 sheet1 工作表
      sheet_1 = pd.read_excel('demo.xlsx', sheet_name='Sheet1', na_values='n/a')
      # 打印 sheet 表名
      print(pd.ExcelFile('listings.xlsx').sheet_names)
      # 打印数据头部
        print(sheet_1.head())
      

      .xlsx 文件转 .csv

      import pandas as pd
      def xlsx_to_csv_pd():
        data_xls = pd.read_excel('demo.xlsx', index_col=0)
        data_xls.to_csv('demo.csv', encoding='utf-8')
      

      .csv 文件转 .xlsx

      import pandas as pd
      def csv_to_xlsx_pd():
        csv = pd.read_csv('1.csv', encoding='utf-8')
        csv.to_excel('1.xlsx', sheet_name='data')
      
    • MATLAB

      同样的原因,MATLAB 读取文本文件均可用 textscan

      .txt 文件

      clc;clear;
      filename = 'filename.txt';
      file = fopen(filename);%打开文件
      columns = 's%s%s%s%s%s%';%读几列就有几个's%'
      data = textscan(filename,columns,'delimiter', '	');%以制表符分隔
      fclose(file);
      

      .csv 文件

      clc;clear;
      filename = 'filename.csv';
      file = fopen(filename);%打开文件
      columns = 's%s%s%s%s%s%';%读几列就有几个's%'
      data=textscan(filename,columns,'delimiter', ',');%, 分隔
      fclose(file);
      

      .tsv 文件

      clc;clear;
      filename = 'filename.tsv';
      file = fopen(filename);%打开文件
      columns = 's%s%s%s%s%s%';%读几列就有几个's%'
      data=textscan(filename,columns,'delimiter', '	');%以制表符分隔
      fclose(file);
      

      .json 文件

      MATLAB 读取 .json 文件需要下载 jsonlab 包。

      clc;clear;
      addpath('E:\PIR\PIR_V3.0\jsonlab-1.5'); %添加jsonlab包的存放路径
      
      filename = 'filename.json'; %文件名称
      jsonData = loadjson(filename);%jsonData是struct结构
      data = jsonData.u';
      

    二、绘图

    • MATLAB

      MATLAB 帮助文档

      点状图

      plot(xi,yi,'>','Color',[x/255 x/255 x/255]);%右三角,颜色为(x,x,x)
      %符号可为'o','.','+','>','<'xlabel('x/x')
      ylabel('y/y')
      title('Title')
      
      set(gcf,'unit','normalized','position',[0.2,0.2,0.8,0.6]);%固定大小
      

      折线图

      xi=  1: 0.25:76;
      yi = interp1(X,Y,xi,'spline');%插值,将步长由1变为0.25
      plot(xi,yi,'Color',[x/255 x/255 x/255],'LineWidth',1);%颜色为(x,x,x),线条粗细为1
      xlabel('x/x')
      ylabel('y/y')
      title('Title')
      
      set(gcf,'unit','normalized','position',[0.2,0.2,0.8,0.6]);%固定大小
      

      条形图

      MATLAB bar

      y=[1 2 3,1 2 3];%分组条形图
      tiledlayout(2,1)%指定纵横比
      bar(y);
      bar(x,y);
      bar(y,'stacked');%与y=[1 2 3,1 2 3]结合,同一个柱形上分层显示
      bar(x,y,0.6);%相对宽度控制间隔
      bar(y,'FaceColor',[0 .5 .5],'EdgeColor',[0 .9 .9],'LineWidth',1.5);%多参数
      
      y = [10 15 20; 30 35 40; 50 55 62];
      b = bar(y);
      b(3).FaceColor = [.2 .6 .5];%每组第三列设为绿色
      

      其他功能

      %绘制多张
      figure(i);
      %plot
      hold on;
      figure(i+1);
      %plot
      
      %多线同图
      %plot
      hold on;
      %plot
      
    • python

      点状图

      import matplotlib.pyplot as plt
      plt.rcParams['figure.figsize'] = (48.0, 30.0) # 设置figure_size尺寸
      plt.plot(X,Y,'.')
      plt.xlabel("x-label",fontproperties=zhfont,fontsize='32')
      plt.ylabel("y-label",fontproperties=zhfont,fontsize='32')
      plt.title("title",fontproperties=zhfont,fontsize='32')
      

      折线图

      import matplotlib.pyplot as plt
      plt.rcParams['figure.figsize'] = (48.0, 30.0) # 设置figure_size尺寸
      plt.plot(X,Y)
      plt.xlabel("x-label",fontproperties=zhfont,fontsize='32')
      plt.ylabel("y-label",fontproperties=zhfont,fontsize='32')
      plt.title("title",fontproperties=zhfont,fontsize='32')
      

      其他常用功能

      # 绘制多张
      plt.subplot(221) # 两行两列的第一个
      plt.plot(X1,Y1,'.')
      plt.subplot(222) # 两行两列的第二个
      plt.plot(X2,Y2,'.')
      plt.subplot(223) # 两行两列的第三个
      plt.plot(X3,Y3,'.')
      plt.subplot(224) # 两行两列的第四个
      plt.plot(X4,Y4,'.')
      
      # 多张同图
      plt.plot(X1,Y1,'.')
      plt.plot(X2,Y2,'.')
      
      # 设置分辨率
      ## 绘制分辨率
      plt.rcParams['figure.figsize'] = (24.0, 20.0) # 默认的像素为[6.0,4.0],分辨率为100,图片尺寸为 600&400
      plt.rcParams['figure.dpi'] = 300 # 直接设置分辨率,一般使用这两种方式之一
      ## 保存分辨率
      plt.rcParams['savefig.dpi'] = 300 # 预先设定保存图片像素
      plt.savefig(‘demo.jpg', dpi=200) # 保存时指定分辨率,一般使用这两种方式之一
      
      # title 格式
      ## 该条(title 格式)参考`开码牛`的博客
      plt.title('Interesting Graph',fontsize='large',fontweight='bold') 设置字体大小与格式
      plt.title('Interesting Graph',color='blue') 设置字体颜色
      plt.title('Interesting Graph',loc ='left') 设置字体位置
      plt.title('Interesting Graph',verticalalignment='bottom') 设置垂直对齐方式
      plt.title('Interesting Graph',rotation=45) 设置字体旋转角度
      plt.title('Interesting',bbox=dict(facecolor='g', edgecolor='blue', alpha=0.65 )) 标题边框
      
    • 常用配色

    #5d7a9a#ec554a#ffad60#8bc24c#2d2d2d
    #bc8420#593e1a#ffeb28#996699#0fff95
    展开全文
  • 学习代码心得总结

    千次阅读 2019-07-05 08:38:53
    在遇到一个自己搞不懂的问题点后,总结了以下方法论: 在csdn中查询关键字,找标题关联性最大的点开找大概10个帖子看。(查资料,先找,找一定量后,一个个再看) 看msdn 问大神 当然在找资料的时候会发现,找到...

    在遇到一个自己搞不懂的问题点后,总结了以下方法论:

    1. 在csdn中查询关键字,找标题关联性最大的点开找大概10个帖子看。(查资料,先找,找一定量后,一个个再看)
    2. 看msdn
    3. 问大神
    4. 动手做(更新于2020/4/11)

    解决问题

    当然在找资料的时候会发现,找到相关的资料里面也有看不懂的,那就继续对看不懂的资料继续深入,就像是一个个节点。个人觉得当你达到第三层的时候差不多就该收手了,这个世界那么大你不可能搞懂世间万物所有事情。

    同时脑子里一定要有个目标,找到新不懂点的时候不断的问自己这只是对我搞懂元问题是否有帮助。自己内心就会对自己对此知识点搞懂到什么程度有个概念,是该全部搞懂呢,还是略知一二即可 。

    以上流程只要你在任何步骤搞懂了元问题就可以收手,注意目标导向。

    所有问题搞懂后一定要总结,问用的方法就是写博客,将思路梳理一遍,重点是写博客就是给别人看的,要写的别人看得懂,在你组织语句,整理自己的表达的同时,又将知识梳理了一遍。所谓teach is learn (费曼学习法)

    ps:在你搞不懂一个问题的同时写帖子求助也是一个很好的方式,这不仅是希望得到别人的帮助,更是你在写帖子的同时,你也在整理自己对此问题的理解。要知道很多时间搞不懂并不是你的知识面不够完善,而是对此问题的结构不清晰所致。只要你问对问题了,那么这个问题基本已经解决一半了。

    等你搞懂了自己哪里不懂,是知识面不够那么就去补充哪方面的知识。如果是概念还不清晰,那就去查实现模式的相关知识。那么搞定这个问题就是时间投入而已了。

    当然这方法适用于对某个功能的实现等,复杂的一系列问题的概念汇总、疏通。


    解决问题的思路:
    拆解问题:
    对一个完全陌生的复杂的系统。要将需要实现的功能逐个拆解,进行学习。
    结合以上解决问题的思路,还有总结归纳的学习方法、做Demo,逐个击破。当你一个个攻克难关的时,你的思路也会越来越清晰。从最当初的一团乱麻到清晰的思路。
    当然最重要的就是,及时,马上就去做。执行力要强。有很多思路是在做的过程中不断清晰,关想是没用的(更新于2020/04/18)


    学习方法

    咱们手艺人要不断的学习新东西,最近我的心得是无论学习什么东西,自己一定要动手做,至于怎么做我的办法就是自己写Demo,一个小功能实现都写个Demo。
    现在云端那么方便,就存在GitHub上,同步,现在手机端也都可以看了。这样才能把学到的看到的变为己有。
    由于人类大脑记忆的特殊性质,你做过的话,有那个Demo在你的资料库。当你需要一个调用你学习过的知识,你脑子里面只要有一点印象,再去资料库里面找,就会立马解决问题。(这也许就是神奇经树突结构造成的,我自己YY的)大脑最厉害的就是联想,从一个点联想到另外一个点,我们只要不断的做Demo,我就是在我们的大脑,种下一个个锚点,我脑子也不需要记住全部,只需要我知道在哪里可以调用资料就够了。(更新于2020/04/11)

    再简单的东西,最好也动手做一边,除非你之前做过,大脑有时候会欺骗你,因为有惰性懒得动手。但是等你真正要用到的时候,又是手忙脚乱的去网上找解决方案。相信我,等你解决问题的时候,打开自己的Demo看看,比网上找别人的代码看,效率要高不止半点。(更新于2020/04/18)

    展开全文
  • 之前研究了很久GDI+,也一直看不到,因为一直都不动手,今天偶然百度查询资料,终于实现了GDI+绘图的基本流程了,因此总结下基本编写代码的流程,分为单文档,和对话框两种方式来绘图,也写出了注意要点,在此分享,...
  • 六种人体姿态估计的深度学习模型和代码总结

    万次阅读 多人点赞 2018-08-24 17:09:56
    六种人体姿态估计的深度学习模型和代码总结 姿态估计的目标是在RGB图像或视频中描绘出人体的形状,这是一种多方面任务,其中包含了目标检测、姿态估计、分割等等。有些需要在非水平表面进行定位的应用可能也会用到...

    六种人体姿态估计的深度学习模型和代码总结

    姿态估计的目标是在RGB图像或视频中描绘出人体的形状,这是一种多方面任务,其中包含了目标检测、姿态估计、分割等等。有些需要在非水平表面进行定位的应用可能也会用到姿态估计,例如图形、增强现实或者人机交互。姿态估计同样包含许多基于3D物体的辨认。

    在这篇文章中,Model Zoo的作者汇总了几种开源的深度学习模型以及针对姿态估计的代码,论智对其进行了编译,如有遗漏请在评论中补充。

    1.DensePose

    六种人体姿态估计的深度学习模型和代码总结

    创作这篇文章的初衷就来源于Facebook研究所的DensePose,上周,Facebook公布了这一框架的代码、模型和数据集,同时发布了DensePose-COCO,这是一个为了估计人类姿态的大型真实数据集,其中包括了对5万张COCO图像手动标注的由图像到表面的对应。这对深度学习研究者来说是非常详细的资源,它对姿态估计、身体部位分割等任务提供了良好的数据源。

    DensePose的论文中提出了DensePose-RCNN,这是Mask-RCNN的一种变体,可以以每秒多帧的速度在每个人体区域内密集地回归特定部位的UV坐标。它基于一种能将图像像素通过卷积网络映射到密集网格的系统——DenseReg。模型的目标是决定每个像素在表面的位置以及它所在部分相对应的2D参数。

    DensePose借用了Mask-RCNN的架构,同时带有Feature Pyramid Network(FPN)的特征,以及ROI-Align池化。除此之外,他们在ROI池化的顶层搭建了一个全卷积网络。想了解DensePose更多的技术细节,请阅读原论文。

    论文地址:arxiv.org/abs/1802.00434

    GitHub地址:github.com/facebookresearch/Densepose

    数据集地址:github.com/facebookresearch/DensePose/blob/master/INSTALL.md#fetch-densepose-data

    2.OpenPose

    六种人体姿态估计的深度学习模型和代码总结

    OpenPose是由卡内基梅隆大学认知计算研究室提出的一种对多人身体、面部和手部形态进行实时估计的框架。

    OpenPose同时提供2D和3D的多人关键点检测,同时还有针对估计具体区域参数的校准工具箱。OpenPose可接受的输入有很多种,可以是图片、视频、网络摄像头等。同样,它的输出也是多种多样,可以是PNG、JPG、AVI,也可以是JSON、XML和YML。输入和输出的参数同样可以针对不同需要进行调整。

    OpenPose提供C++API,以及可以在CPU和GPU上工作(包括可与AMD显卡兼容的版本)。

    GitHub地址:github.com/CMU-Perceptual-Computing-Lab/openpose

    数据集地址:domedb.perception.cs.cmu.edu/

    3.Realtime Multi-Person Pose Estimation

    六种人体姿态估计的深度学习模型和代码总结

    这一模型和上面的OpenPose高度相关,同时特征模型能与多种框架相关联。论文的作者提供了一种自下而上的方法,对多人的姿态进行实时估计,不需要用任何人物探测器。

    这种方法运用了一种非参数表示,我们称为Part Affinity Fields(PAFs),用它可以学习将图中人物和其身体部位联系到一起。有关该技术的具体细节和理论,可以阅读原文。

    另外,这一方法最棒的特征之一就是它可以在多种不同的框架中实现,针对不同框架,已经公开了相关代码和模型:

    论文地址:arxiv.org/abs/1611.08050

    GitHub地址:github.com/ZheC/Realtime_Multi-Person_Pose_Estimation

    4.AlphaPose

    六种人体姿态估计的深度学习模型和代码总结

    AlphaPose是一款精准的多人姿态评估工具,并声称是第一款开源系统。AlphaPose既可以在图片、视频或多图中进行姿态估计,也能在画面中对动作进行追踪。它的输出形式非常广泛,包括PNG、JPG和AVI等具有关键点的图片形式,也有JSON格式的输出,这一特点也使其成为众多应用受欢迎的工具。

    六种人体姿态估计的深度学习模型和代码总结

    目前,这一工具支持TensorFlow和PyTorch两种实现。AlphaPose利用一种区域性的多人动作估计框架将不精准的人类边界框该进程精确的动作估计。这里有三种元素:对称空间转换网络(SSTN)、参数化姿态非极大抑制(NMS)以及姿态导向的生成器(PGPG)。更多技术细节请查看原论文。

    论文地址:arxiv.org/abs/1612.00137

    GitHub地址:github.com/MVIG-SJTU/AlphaPose

    5.Human Body Pose Estimation

    六种人体姿态估计的深度学习模型和代码总结

    该模型利用MPII人类姿势数据集进行训练,这是一个内容十分丰富的数据集,专门针对人类姿态估计。目前只有TensorFlow的实现。

    这项研究将人类姿态估计的任务应用到真实的图片中,他们的方法既解决了动作识别,也能进行估计,与之前先检测人类动作在对此进行推测的技术有所区分。在实施过程中用到了基于CNN的探测器和整数线性规划法。

    ArtTracker论文:arxiv.org/abs/1612.01465

    DeeperCut论文:arxiv.org/abs/1605.03170

    网站地址:pose.mpi-inf.mpg.de/

    GitHub地址:github.com/eldar/pose-tensorflow

    6.DeepPose

    六种人体姿态估计的深度学习模型和代码总结

    相比于前面几种方法来说,DeepPose算是比较“古老”的了,论文发布与2014年,提出了一种基于深度神经网络的姿态估计方法,是基于DNN向身体关节回归的问题。它以一种整体的方式估计姿态,并且表述起来非常简洁强大。

    目前网上还没有官方实现过程。但是有人做出了复现结果:

    DeepPose是第一个将深度学习应用到人类姿态估计上的应用,并且取得了当时顶尖的结果,成为了其他方法的baseline。

    论文地址:static.googleusercontent.com/media/research.google.com/zh-CN//pubs/archive/42237.pdf

    小结

    姿态估计是计算机视觉领域一个非常热门的话题,Facebook最近发布的DensePose让人越来越多地关注这个问题。进行姿态估计有很多方法,现有的资源一定可以对你有所启发。如果你有其他的好方法,请在下面留言分享!

    原文地址:modelzoo.co/blog/deep-learning-models-and-code-for-pose-estimation

    展开全文
  • 今天小编就为大家分享一篇关于Python常用爬虫代码总结方便查询,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧 今天小编就为大家分享一篇关于Python常用爬虫代码总结...

    今天小编就为大家分享一篇关于Python常用爬虫代码总结方便查询,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    今天小编就为大家分享一篇关于Python常用爬虫代码总结方便查询,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

     

     

     

     

     

     

     

     

     

     

     

     

     

    在学习中有迷茫不知如何学习的朋友小编推荐一个学Python的学习q u n 227  -435-  450可以来了解一起进步一起学习!免费分享视频资料

    以上就是小编今天为大家总结的一些Python常用的爬虫代码。

    展开全文
  • 小程序错误代码总结

    千次阅读 2018-02-26 00:54:56
    40163:code被重复使用40029:不合法的code40125:小程序账号密码配置不正确(appId、secret)
  • 数模美赛常用算法matlab代码总结+数模大礼包

    千次阅读 多人点赞 2020-03-08 02:39:35
    数模美赛常用算法matlab代码总结+数模大礼包 一、数模美赛常用算法matlab代码总结(包含神经网络、灰色关联、差值与拟合、聚类分析、灰色预测、遗传算法、熵权法、数据包络算法、TOPSIS方法等模型算法) 二、数模大...
  • 计算机图形学画图代码总结

    千次阅读 2017-05-01 21:10:59
    ///DDA画直线 #include using namespace std; void Line(int x1, int y1, int x2, int y2, int color) { CDC *pDC = GetDC();///获取图形设备环境 float t, x, y, step; step = 1.0/(sqrt((x2-x1)*(x2-x1)+
  • 连接服务器 ssh username@服务器ip 创建删除文件(夹) rm -rf a.py # 删除文件 rm -rf data # 删除文件夹 ...touch a.py/vim a.py # 创建文件 mkdir data # 创建文件夹 ...scp /home/lmc/a.py(local) username@...
  • 本文对接上篇文章《 layui.js实现多文件上传前端html写法总结》,后台和前端html的url...代码如下: @ResponseBody @RequestMapping({"/demp/model/uploadAreaFile.do"}) public JSONObject uploadAreaFile(@Requ...
  • tensorflow中 bilstm+crf实现代码总结

    万次阅读 2017-04-29 10:01:17
    正看这方面的资料,网上资源多多,而且质量很高,总结放在此处:Implementing Bi-directional LSTM-CRF Network http://stackoverflow.com/questions/33078423/implementing-bi-directional-lstm-crf-networkCRF和...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,285,903
精华内容 914,361
关键字:

代码总结