自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (1)
  • 收藏
  • 关注

原创 js数值类型转换

讲解Number、parseInt和parseFloat函数

2023-02-06 21:01:34 577 1

原创 js中undefined和null的区别

快速了解undefined和null,它们也是常见的前端面试题

2023-02-05 20:36:03 264

原创 python提高系列2:详细讲解深拷贝与浅拷贝

这一讲的深浅拷贝对可变类型和不可变类型是有区别的,关于可变类型和不可变类型可以看我的这篇讲解在很多语言中都涉及到深浅拷贝问题,因为在不同的场景中深浅拷贝都有对应的应用,如果用混淆了,则会出现bug。在讲解深浅拷贝之前,先看一下Python中的赋值问题。

2022-10-27 22:29:02 530

原创 Python提升系列——(1)不可变类型与可变类型

不可变与可变类型中的“变”说的是内存地址。(不可变)如字符串型“hello”在内存中的地址是不变的,不管它被赋值给多少变量。(可变)如列表类型的[1, 2, 3]在被赋值给变量list1时,地址是2577029751368,当被赋值给变量list2时,地址又是2577029751432,虽然这两个变量的值都是[1, 2, 3],但是实际的地址确实不同的。

2022-10-26 23:08:55 290

原创 打工人的一天

我常想职场是残酷的,有散有聚才是常态,当你到了别处,也会有另一番风景。

2022-10-23 14:48:16 284 2

原创 讲解MySQL中的GROUP BY分组和ORDER BY排序

```sql-- 创建订单表-- CREATE TABLE label.t_order(-- id int not null AUTO_INCREMENT COMMENT '订单id',-- user_id bigint not null COMMENT '下单人id',-- user_name varchar(16) not null default '' COMMENT '用户名',-- price decimal(10, 2) not null default 0 COMMENT.

2022-04-25 18:57:17 5440

原创 CSS 网页定位与布局

要想在网页上展示的内容合理、布局好看,那就少不了CSS定位与布局的应用。CSS网页定位分为三种:文档流定位、浮动定位和层定位,接下来分别讲一下这三种定位方式。1 文档流定位html中的元素按照是否独占一行可以分为:行内元素、块级元素和行内块元素。行内元素:不能独占一行,使用width height属性无效。常见的行内元素有:span标签 a标签块级元素:可以独占一行,通过width和height可以设置元素的宽、高。常见的块级元素:div table ul ol li p form h1 h2 …

2022-02-19 14:35:09 2051 1

原创 在canvas中根据鼠标的位置,获取当前点的RGB值

概述在canvas画布中,我们往往需要获取到某个点的像素颜色,例如我们常见的调色板。今天以官网上提供的方格调色板为例,在此基础上稍微做一下扩展,讲解一下如何根据鼠标的位置获取某个点的RGB值。效果图可以点击某个方格,然后在下面的小方格中会显示对应的颜色大致思路1、这个例子中有两个canvas,大的canvas展示调色板,小的canvas展示用户选取的颜色。2、大的canvas通过两个for循环、fillStyle和fillRect在小矩形框中渲染颜色3、通过鼠标的mousedown事件,获取

2022-01-14 20:22:43 2369 1

原创 canvas绘制直线、折线、矩形与多边形

1、canvas的width和height属性与style中的width和height的区别canvas是html5新增的绘图工具。通过canvas标签创建画布后,它有三个基本要素:id、宽度和高度。特别注意的是:canvas的宽度和高度不能在style里面设置,因为此时设置的是div的宽度和高度,canvas会使用默认的宽度(300px),高度(150px)。<canvas id="canvas" width="200px" height="200px" style="border: #138

2022-01-09 19:30:36 10296 2

原创 通过canvas获取图片base64位编码

前言canvas是HTML5提供的一种2D绘图工具,官方库中提供了各种可以绘制直线、矩形、多边形等形状的API。在前端和后端的交互中,后端往往需要在前端获取图片的base64位编码信息,而canvas提供了getImageData和toDataURL等接口,使前端能够方便地获取图片信息。

2022-01-04 23:01:41 4194

原创 labelme UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xaf in position 227: illegal mult

[INFO ] __init__:get_config:71 - Loading config file from:C:\Users\xxx\.labelmercTraceback (most recent call last): File .... line 191, in <module> main() File ...., line 145, in main config = get_config(config_file_or_yaml, config_fro

2021-11-04 18:22:13 1990

原创 js中数组常用的API(二)之迭代函数

有时,我们需要迭代数组中的元素,可以使用for循环进行迭代。不过,数组自带了很多迭代方法,方便我们调用。这些迭代函数的第一个参数是一个函数,这个函数可以带三个参数,分别表示数组元素、数组的索引和数组本身。every(function (element, index, array){}) 1、everyevery函数是测试该数组的元素是否都满足某个条件。返回值:都满足,返回true,只要有一个不满足,则返回false let numArr = [1, 343, 123, 5,

2021-10-10 18:23:04 291

原创 js中数组常用的API(一)之添加、删除和搜索元素

数组的定义添加和删除数组元素的方法添加数组的方法push()方法可以在数组的末尾添加一个或多个元素unshift()方法可以在数组的开头添加一个或多个元素删除数组元素的方法pop()方法shift()方法查找数组元素的索引数组转换成字符串其他方法数组的定义数组是由一系列有序的元素组合在一起,通过索引可以得到元素的值。var arr = [1,2,‘pink老师’]添加和删除数组元素的方法添加数组的方法push()方法可以在数组的末尾添加一个或多个元素目的.

2021-10-09 19:42:36 1312

原创 详细讲解js中的深拷贝与浅拷贝

深拷贝与浅拷贝在其它语言中也经常被提及到,在实际项目开发过程中也常常需要区分当前使用的到底是深拷贝还是浅拷贝,有时候在该使用深拷贝的地方,我们使用了浅拷贝,会导致深藏不露的bug。

2021-09-27 22:56:41 24915 35

原创 JS 根据API直接求一维数组的最大值和最小值,并返回索引

我们经常需要求一维数组中的最大值和最小值,有时候还想知道其对应的索引值,通过for循环肯定可以求,但是当数组过大时,考虑到效率问题,会想通过现有的API求,这样不仅效率高,而且代码简洁。思路:(1)先根据Math.min.apply函数求数组中的最小值,也可以通过Math.max.apply函数求数组中的最大值;(2)根据数组中的indexOf 函数,找到最小值或最大值对应的索引值说明:Math.min(arg1, arg2,…)求参数的最小值Math.max(arg1, arg2, …)求参

2021-09-27 07:45:03 881

原创 python语言判断NaN值

NaN:not a number,顾名思义它表示“它不是一个数字”。出现场景:一般是超出了作用域,例如计算arccos(-1.3),返回值就是nanimport numpya = np.arccos(-1.2)print(a)打印nan值,并且有错误信息 RuntimeWarning: invalid value encountered in arccos在图像处理中,出现nan会影响矩阵操作,如何判断该值为nan呢?方法一:通过numpy包中的API判断,np.isnan(变量名) 返回值

2021-09-14 19:44:00 3731

原创 详细解释numpy库中slice切片用法 0,1,None

详解numpy库中切片用法 0,1,None前言在图像处理中,常常会对矩阵进行切片操作,例如,通过切片操作拿出ROI区域,或者做一些变换。常规切片用法[1:3]取矩阵的[1,3)的第一行和第二行import numpy as nparr1 = np.arange(40)arr1 = arr1.reshape(5, 8)print(arr1)print('####################################')arr2 = arr1[1:3]print(arr2)

2021-09-13 19:00:31 2757

原创 安装vue devtools工具 提示yarn There appears to be trouble with your network connection. Retrying...

环境: win10虽然我运行npm install -g yarn时,显示已经安装成功,但是我在cmd中输入yarn时,总是提示“There appears to be trouble with your network connection. Retrying...”于是,我尝试换源yarn config set registry https://registry.npm.taobao.org感觉还是很慢,后来果然很慢,估计花了20分钟,卡在最后面的两步,后来,我停掉了。...

2021-09-04 12:08:35 4116

原创 js中的真假

js中的真假1、在js中,若变量声明了未赋值,则为undefined。在js中,为false的有:undefined、null、空字符串" "、0,为true值的有:空数组[],空对象[], 1, -1等等。2、在js中,=== 和 == 是有区别的,前者是严格的等于号,会判断数据类型和值是否相等,而后者只会判断值是否相等。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8">

2021-09-03 19:09:04 1069

原创 使用macOS系统编译Opencvjs

MAC系统编译opencvjs依赖的包安装Git安装Cmake安装Python安装Emscripten![在这里插入图片描述](https://img-blog.csdnimg.cn/d2c2dc1d21504ac3b2e2ef387767407f.png)安装Opencvopencvjs新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释

2021-08-20 19:05:24 480

原创 JS中的setTimeout和setInterval函数

前言在生活中,常有定时做某事,或者循环做某事的需求,如设置2个小时煲汤,饲料机器定时、不断地的投喂物料。在js代码世界里,我们也需要定时或者循环干某件事,由此需要用到

2021-06-15 22:05:42 1696 1

原创 Git命令总结

概述在学校的时候就稍微接触过git,但是学的非常皮毛,也没怎么在github上面上传过代码。进入社会,成为一名真正的码农后,才知道git是如此的强大。有一段时间,我很受版本管理的困扰,为了备份一些代码,并且又在原来的代码上修修改改,就总是复制、粘贴,真是头大。后来学习了git,觉得非常有必要总结一下,时常温故而知新。git简介Linux之父——Linus Torvalds在2005开发出git,当时是为了便于linux代码的管理。git是分布式管理器,与之相对应的集中式管理svn。它们的优缺点:s

2021-02-05 16:47:59 93 1

原创 win10 python pip下载的软件包在什么位置

win10 Python pip下载的软件包在什么位置C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Lib\site-packages

2021-02-04 18:00:08 3257

原创 《机器学习实战》笔记:KNN算法

1、KNN算法介绍KNN全称K-Nearest Neighbor,K-近邻算法。它是一种分类算法,通过测量不同特征值之间的距离进行分类。优点:精度高、对异常值不敏感、无数据输入假定缺点:计算复杂度高、空间复杂度高适用数据范围:数值型和标称型2、KNN算法实现步骤计算测试数据与训练集之间的欧式距离(distance = sqrt(a-x1)**2 + (b-y1)**2) 将距离distance从小到大排序 取前K个距离最小值,并统计这些数据的类别出现次数 次数最大的那个类.

2021-01-15 16:19:40 205

原创 C++类中的函数重写(覆盖)、虚函数、纯虚函数的区别与联系

1、函数重写(覆盖)定义:子类中实现了一个与父类的成员函数原型完全相同的函数,即为重写。 例子1:下面的代码中定义了Animal父类和Dog子类,其中都定义了void info()函数,Dog类中的void info()函数重写(覆盖)了父类了中的info函数,所以在main函数中调用Dog类的info函数时,会调用子类的info函数,即重新写了该函数,或称之为覆盖了父类的info函数。#include<iostream>using namespace std;//父类clas

2020-09-17 17:41:33 4494 3

原创 jupyter notebook入门——自动补全代码

基本操作1、通过cmd打开jupyter notebook。jupyter notebook如果没出错,就会在浏览器中打开notebook文件。2、在file菜单栏下有本地文件夹的路径,可以点击相应的文件打开本地的notebook文件。3、可以在new菜单栏下新建一个python3文件。notebook快捷键的使用1、执行单元格:ctrl + enter2、执行当前单元格,并移动到下一个单元格:shift + enter3、执行当前单元格,并新建、移动到下一个单元格:alt + ente

2020-09-14 17:06:16 39181 8

转载 Spark RDD计算-Transformation(实战和面试都值得拥有)

1、RDD特性RDD概念:RDD为Spark核心抽象,其全名为弹性分布式数据集。看到此名字,千万别认为它只是一个数据集,存放一些计算元数据的逻辑抽象。​RDD的五个特征:1.每个RDD都由若干个Partition组成2. 函数作用在RDD上,这个特点在开发时可以直观感受3. RDD之间存在依赖关系,这种依赖关系形成“血统图”4.携带分区器的RDD决定RDD的分区数量5.计算最佳位置的选择(数据本地化)RDD的弹性体现:1.RDD数据存储自动进行...

2020-05-29 16:22:05 239

原创 人工智能时代已来

1、应用APP越来越懂你大概半个月前,我和家人一起去小县城的大型连锁超市购物,在进去之前,需要先把自己手里拿的东西放进自助储物柜里面。原来都是按下“存”的按钮储物柜出条形码,我们直接存东西,然后根据条形码取东西,这一次直接根据人脸识别存、取物品。我特别惊讶,小地方也开始用人脸识别了。在不知不觉中,许多人工智能产品已经渗透到我们日常的生活中。我的一位好朋友是中度抖音爱好者,她平时没事的时候会刷刷抖音。有一天,她跟我说,在抖音上面,她学到一些东西,解决了她的一些情感困惑,她觉得抖音推荐...

2020-05-18 09:45:51 744 2

原创 女程序猿的苦恼:“26岁后,分手对我来说不是件容易的事情”

看到一篇文章的标题:“恋爱三个月,男友就要求结婚”25岁后被迫加速的人生。25岁后,很多事情不再像青春期一样,能够简单粗暴解决,的确存在被迫加速的一部分人生。结婚就是最被迫的一部分。在农村,25岁的女性被称之为“大姑娘”,30岁的男性被称之为“单身汉”。如果男女在合适的年龄没有结婚,外界总会猜测你是不是身体有毛病,还是家庭不和睦,或者是经济条件的问题。他们会从你或者你的家庭方面出发挑各种毛病,试图给“你还没有结婚”戴一个合适的帽子。这个社会的潜规则就是男大当婚女大当嫁。目前为止,仍然没有打破这一传统

2020-05-08 17:48:02 3882 20

原创 播放音乐There was an error running option A4 audio; amixer... error no such file or directory

树莓派播放音乐时 设置出错

2020-05-06 11:59:23 1773 1

原创 树莓派中python相关操作集合

在树莓派中使用python编写程序时,总是容易查找一些命令,所以今天把一些常用的命令记录下来。1、查找python安装路径,采用whereis命令whereis python2、使用pip安装软件包时,由于树莓派中可能存在多个python版本,所以通过pip --version,在查看pip命令的版本同时,还能得到与此关联的Python版本,从而知道你的pip下载的软件包是与哪个py...

2020-04-30 15:02:54 1036

原创 树莓派 OV5647摄像头 VIDEOIO ERROR: V4L: can't open camera by index 0

1、在树莓派中运行含有下面代码的时候,出现的问题。我尝试着网上的解决办法,如0换成-1,仍然解决不了问题。video_capture = cv2.VideoCapture(0)当我使用以下命令查看树莓派视频设备的时候,发现没有video0 这个摄像头设备,于是,我重复了整个安装摄像头的过程,还是没有发现video0。于是我猜测摄像头坏了。ls /dev/video*2、我又使用...

2020-04-29 11:09:35 7127

原创 树莓派 OV5647摄像头 安装、使用过程中如何避坑

1、安装过程的注意事项:1.1不能使蛮劲地往CSI接口插,要把树莓派上的CSI接口用指甲抬起来,CSI接口有一个类似卡槽的东西,当把这个卡槽抬起来后,OV5647的软线接口就非常容易放进去。(我在前几次的安装过程中,就没发现这个技巧,使劲的插树莓派上的CSI接口,结果摄像头的软线端都弯了,使用出现问题,已经被我弄坏了,算是血的教训)卡槽的位置如下图 (抬起来)安装的时...

2020-04-29 10:25:32 9578 7

原创 【动手学深度学习】 conda 中进入python环境可以导入mxnet,但是jupyter中无法导入mxnet

问题描述:在conda中激活虚拟环境conda activate gluon进入python环境后,可以导入mxnet模块,但是打开jupyter notebook后,无法导入mxnet。原因:由于jupyter内核中指定的python路径和当前运行的python路径不一致导致的。解决方法:修改jupyter内核中指定的python路径。1、首先确定当前运行的pytho...

2019-12-25 15:18:32 1743 6

原创 keras 报错---`validation_steps=None` is only valid for a generator based on the `keras.utils.Sequence

ValueError: `validation_steps=None` is only valid for a generator based on the `keras.utils.Sequence` class. Please specify `validation_steps` or use the `keras.utils.Sequence` class.提示validation_st...

2019-05-23 11:39:05 6013 6

原创 tensorflow 基础(一)-----张量tensor

实数:1一维张量(列表):[1,2,3]二维张量(矩阵):[[1,2], [3, 4]]三维张量:[[[1,2], [3,4], [5, 6]]]进行张量运算时,需要注意tensor的形状通过会话session()计算节点的值import tensorflow as tf# 定义a,b为常数a = tf.constant(1)b = tf.constant(2...

2019-05-09 16:13:07 546

原创 Numpy创建数组---莫烦PYTHON

总结NumPy的知识点来自莫烦pythonimport numpy as np# 生成一个数组,并规定数据格式a = np.array([1, 2, 3, 4], dtype=np.int16)print(a)print(a.dtype)b = np.array([1, 2, 3, 4], dtype=np.float32)print(b)print(b.dtype)p...

2019-04-17 16:01:37 185

原创 cv2.imread()和cv2.cvtColor() 的使用

1、cv2.imread()接口读图像,读进来直接是BGR 格式数据格式在 0~255需要特别注意的是图片读出来的格式是BGR,不是我们最常见的RGB格式,颜色肯定有区别。2、cv2.cvtColor(p1,p2) 是颜色空间转换函数,p1是需要转换的图片,p2是转换成何种格式。cv2.COLOR_BGR2RGB 将BGR格式转换成RGB格式cv2.COLOR_BGR2GRAY 将...

2019-04-01 16:52:35 181940 36

原创 python reshape用法,-1的意思

1、reshape的用法,将数组转换成指定的形状import numpy as npx = np.array([[1,2,3],[11,12,13,],[22,23,24],[31,32,33]])&gt;&gt;&gt;xarray([[ 1, 2, 3], [11, 12, 13], [22, 23, 24], [31, 32, 3...

2019-03-12 19:58:15 4137

原创 Python中对__name__的理解

1、__name__属性是系统自带的一个变量。2、__name__属性可以让python脚本作为模块和独立运行时,都能正确运行。3、当脚本作为模块被调用时,__name__属性的值此时是模块名,     当脚本独立运行时,__name__属性的值是__main__可以通过__name__属性来判断脚本的运行状态以下通过代码,加深理解 # mymodule2.pyd...

2018-10-11 10:23:31 973

MiniTools linux平台下的 有32位和64位可选

MiniTools linux 可以下载.bin文件到开发板,避免了频繁使用SD卡和DNW软件

2018-01-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除