COCO_03 制作COCO格式数据集 dataset 与 dataloader
文章目录
- 1 引言
- 2 pycocotools介绍
- 3 Dataset 构建
- 4 Dataloader 构建
- 4.1 解决batch中tensor维度不一致的打包问题
- 4.2 collate_fn()函数分析
- Appendix
- A. convert_coco_poly_mask
- B. COCO_Transform
- 参考
1 引言
在之前的文章中,我们认识了COCO数据集的基本格式
https://blog.csdn.net/qq_44776065/article/details/128695821和制作了分割数据集 制作COCO格式目标检测和分割数据集
https://blog.csdn.net/qq_44776065/article/details/128697177,那么接下来如何读取数据集,并展示结果呢?接下来我们解决这个问题
2 pycocotools介绍
pycocotools是官方给出的解析COCO格式数据集的API,帮助我们对COCO格式数据集进行操作,官方API:https://github.com/cocodataset/cocoapi,在PythonAPI
中有Demo,可以下载后运行
安装pycocotools
(本人安装时Linux
和windows
都可使用)
pip install pycocotools
重要属性
- 图片的字典信息:
coco.imgs
- 标注的字典信息:
coco.anns
- 类别的字典信息:
coco.cats
重要API,get
与load
:
基本思想:先获取ID,再加载信息
获取ID:
- 获取所有图片的ID:
getImgIds()
指定ID回返回指定的ID - 根据
imgIds
和catIds
获取标注ID:getAnnIds(imgIds=[],catsIds=[])
- 获取类别ID:
getCatIds()
加载信息:
- 加载图片信息
loadImgs(img_id)
,获取的是字典信息,获取路径信息为:loadImgs(img_id)[0]["file_name"]
- 加载标注信息
loadAnns(ann_ids)
,ann_ids
来自筛选的的标注id - 加载类别信息
loadCats(cat_id)
例子:初始化COCO对象,并获取图片ID
from pycocotools.coco import COCO
import osdataset_root = "D:MyDataset/my_coco"
anno_file = "my_annotations.json"anno_path = os.path.join(dataset_root, anno_file)
anno = COCO(anno_path)image_ids = anno.getImgIds()
3 Dataset 构建
基本流程:
- 初始化:初始化
COCO
数据集,并获取所有图片的ID - 获取图片信息,根据
index
获取图片ID,再根据图片ID(或者类别ID)
获取标注ID - 获取标注信息,根据
标注ID
,加载标注信息 - 对标注信息进行处理,转化为
tensor
初始化:
from PIL import Image
from torch.utils.data.dataset import Dataset
from torch.utils.data.dataloader import DataLoader
from pycocotools.coco import COCOfrom utils import convert_coco_poly_mask, draw_gt
import utils.coco_transform as coco_transformclass SegDatasetCOCO(Dataset):def __init__(self, dataset_root, p_anno_filename, category, transforms) -> None:super(SegDatasetCOCO).__init__()# 根据数据集和p_dir获取标注文件assert os.path.exists(dataset_root), "{0} does not exists".format(dataset_root)anno_root = os.path.join(dataset_root, p_anno_filename)self.patient_dir = p_anno_filename[0: -17]self.transforms = transformsself.category = category# 加载COCO数据self.anno = COCO(annotation_file=anno_root)# 获取其中的数据# self.ids = list(self.anno.imgs.keys())self.ids = self.anno.getImgIds()self.dataset_root = dataset_root# 输出目录信息print(f"Dataset Info Name: {self.patient_dir}")print(f"Dataset Info dataset len: {len(self.ids)}")
获取单个batch:
def __getitem__(self, index):# 获取图片和标注img_id = self.ids[index]# 读取图片filename = self.anno.loadImgs(img_id)[0]["file_name"]filepath = os.path.join(self.dataset_root, filename)images = Image.open(filepath).convert("L")# 获取标注w, h = images.size# 根据图片ID和类别ID获取标注IDanno_ids = self.anno.getAnnIds(imgIds=img_id, catIds=self.category)coco_targets = self.anno.loadAnns(anno_ids)# # 选择标签# coco_targets = [item for item in coco_targets if item["category_id"] == self.category]target = self.parse_targets(img_id=img_id, coco_targets=coco_targets, w=w, h=h)# 返回处理后的数据if self.transforms is not None:images, target = self.transforms(images, target)return images, target
对标注信息处理:
def parse_targets(self,img_id: int,coco_targets: list,w: int = None,h: int = None):assert w > 0, "w 不合法"assert h > 0, "h 不合法"# 只筛选出单个对象的情况anno = [obj for obj in coco_targets if obj['iscrowd'] == 0]boxes = [obj["bbox"] for obj in anno]# 转化为tensor格式, box的格式: [xmin, ymin, w, h] -> [xmin, ymin, xmax, ymax]boxes = torch.as_tensor(boxes, dtype=torch.float32).reshape(-1, 4)boxes[:, 2:] += boxes[:, :2]boxes[:, 0::2].clamp_(min=0, max=w)boxes[:, 1::2].clamp_(min=0, max=h)# 类别标签classes = [obj["category_id"] for obj in anno]classes = torch.tensor(classes, dtype=torch.int64)# 面积area = torch.tensor([obj["area"] for obj in anno])iscrowd = torch.tensor([obj["iscrowd"] for obj in anno])# 分割标签转化为图片segmentations = [obj["segmentation"] for obj in anno]masks = convert_coco_poly_mask(segmentations, h, w)# 筛选出合法的目标,即 x_max>x_min 且 y_max>y_minkeep = (boxes[:, 3] > boxes[:, 1]) & (boxes[:, 2] > boxes[:, 0])boxes = boxes[keep]classes = classes[keep]masks = masks[keep]area = area[keep]iscrowd = iscrowd[keep]target = {}target["boxes"] = boxestarget["labels"] = classestarget["masks"] = maskstarget["image_id"] = torch.tensor([img_id])target["area"] = areatarget["iscrowd"] = iscrowdreturn target
4 Dataloader 构建
创建Dataset
与DataLoader
dataset_root = r"D:\Learning\OCT\oct-dataset-master\dataset\dataset_stent_coco"
p_anno_filename = "P9_1_IMG002_annotations.json"
category = 2transforms = coco_transform.Compose([coco_transform.ToTensor()])dataset = SegDatasetCOCO(dataset_root=dataset_root, p_anno_filename=p_anno_filename, category=category,transforms=transforms)dataset_loader = DataLoader(dataset=dataset,batch_size=1,shuffle=False,collate_fn=dataset.collate_fn)
4.1 解决batch中tensor维度不一致的打包问题
数据集读取需要特殊处理,原因是默认的batch组装无法将结果进行打包,原因是每一张图片的mask
的维度不一致,根据目标的个数确定mask的个数
@staticmethod
def collate_fn(batch):return tuple(zip(*batch))
4.2 collate_fn()函数分析
batch数据格式,数据均为tensor:
image, {"bbox": [[1, 2, ,3 4], ...], "classes": [1, ...], "mask": [[[1,0, 0], [0, 0, 0], [1, 1, 1,1]], ...], "area": [100.0, ...]}
原理分析:
if __name__ == "__main__":a1 = ["a", [1, 2, 3]] a2 = ["b", [3, 4]] # 第二个的元素维度不一致b = [a1, a2]c = zip(*(b))for i in c:print(i)pass
# ('a', 'b')
# ([1, 2, 3], [3, 4])
使用*解开a迭代器
, 将维度不一致的当作一个元素, 使用zip将两个迭代器对应位置的元素进行组合, 完成batch的合并
如果有不同类的元素
if __name__ == "__main__":a1 = ["a", [1, 2, 3]] a2 = ["b", [3, 4]]a3 = ["c", {"array": [5, 6]}]b = [a1, a2, a3]c = tuple(zip(*(b)))for i in c:print(i)pass
# ('a', 'b', 'c')
# ([1, 2, 3], [3, 4], {'array': [5, 6]})
即使多个batch中有不同的元素,这样的情况一般不会出现,常常出现的问题是batch中某个数据维度不一致
Appendix
A. convert_coco_poly_mask
- 使用
coco_mask
将polygon
信息转化为rle格式
,关于RLE格式,参考:<https: > - 对rle格式进行进行解码,转换为图片
mask
- 保证
mask
维度为3,为打包成batch准备,batch中图片格式:B, C, W, H
from pycocotools import mask as coco_maskdef convert_coco_poly_mask(segmentations, height, width):masks = []for polygons in segmentations:rles = coco_mask.frPyObjects(polygons, height, width)mask = coco_mask.decode(rles)if len(mask.shape) < 3:mask = mask[..., None]mask = torch.as_tensor(mask, dtype=torch.uint8)mask = mask.any(dim=2) # 有1则为前景masks.append(mask)if masks:masks = torch.stack(masks, dim=0)else:# 如果mask为空,则说明没有目标,直接返回数值为0的maskmasks = torch.zeros((0, height, width), dtype=torch.uint8)return masks
B. COCO_Transform
再次封装torchvision.transforms.ToTensor
等函数,从而对image
和target
同时处理
import random
from torchvision.transforms import functional as Fclass Compose(object):"""组合多个transform函数"""def __init__(self, transforms):self.transforms = transformsdef __call__(self, image, target):for t in self.transforms:image, target = t(image, target)return image, targetclass ToTensor(object):"""将PIL图像转为Tensor"""def __call__(self, image, target):image = F.to_tensor(image)return image, targetclass RandomHorizontalFlip(object):"""随机水平翻转图像以及bboxes"""def __init__(self, prob=0.5):self.prob = probdef __call__(self, image, target):if random.random() < self.prob:height, width = image.shape[-2:]image = image.flip(-1) # 水平翻转图片bbox = target["boxes"]# bbox: xmin, ymin, xmax, ymaxbbox[:, [0, 2]] = width - bbox[:, [2, 0]] # 翻转对应bbox坐标信息target["boxes"] = bboxif "masks" in target:target["masks"] = target["masks"].flip(-1)return image, target
参考
COCO数据集介绍:https://blog.csdn.net/qq_37541097/article/details/113247318
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4501371.html
如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!
Echarts实现自定义图标——风向图
上图用了两种模式表示风向图,第一种是自定义系列,第二种使用了折线图,给折线图添加自定义图标。 两者的区别在于给options.series设置不同的type值,如下图: 那么我们来一步步实现代码,先创建一个HTML文件&…...

我的架构世界(架构设计)
我的架构世界 有些同学会问,我又不是架构师学架构有什么用?其实,架构可以说是无处不在,每个技术人甚至每个人都应该懂一些架构,为什么呢?所谓的架构其实是一种思维方式,是整体与部分之间的关系…...

分布式存储从FastDFS切换到Minio
什么是Minio 基于官网的介绍如下:MinIO 是一款高性能、分布式的对象存储系统. 它是一款软件产品, 可以100%的运行在标准硬件。即X86等低成本机器也能够很好的运行MinIO。 从官网的介绍可以看出Minio是一款和FastDFS类似的工具,分布式存储系统。目前在使…...

蓝牙4.0
问:什么是蓝牙通信? 答:蓝牙通讯最初设计初衷是方便移动电话(手机)与配件之间进行低成本、低功耗无线通信连接,现在已经成为IEEE802.15标准,得到全球上万家厂商支持。问:如果从事蓝…...

【渝粤题库】陕西师范大学201771 中国古代文学(一) 作业
《中国古代文学(一)》作业 一、单选题(共30小题,每题2分,共60分) 1、先秦以“笔法”、“微言大义”著称于世的史书是( ) A《尚书》 B《国语》 C《春秋》 D《战国策》 2、汉代“四家诗…...

联想手机android系统耗电,联想 K900 Android 4.2 手机续航能力实测
以往的评测中,我们总会提到手机的续航能力,但在智能机大发展之后,这一方面的测评渐渐就减少了,一方面是因为现在的手机基本上都是一天待机,另一方面也因为电池技术并未根本性突破。虽然人们渐渐接受了这一残酷的事实&a…...

装了这几个IDEA插件,基本上一站式开发了
前言 前几天有社区小伙伴私聊我,问我都用哪些IDEA插件,我的IDEA的主题看起来不错。 作为一个开源作者,每周要code大量的代码,提升日常工作效率是我一直追求的,在众多的IDEA插件中,我独钟爱这几款。这期就…...

高级网络应用复习——TCP与UDP,ACL列表, 防火墙,NAT复习与实验(带命令)
作者简介:一名在校云计算网络运维学生、每天分享网络运维的学习经验、和学习笔记。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页 目录 前言 一.知识点总结 1.传输层的协议 (1)TCP 和…...

磁盘管理和搭建日志服务器
文章目录磁盘容量检查磁盘分区,格式,永久挂载1P1E6L(一主一扩六逻辑)2P1E4L(两主一扩四逻辑)3P1E1Lswap分区的两种建立方式现有磁盘建立添加新磁盘建立方式搭建日志服务器磁盘容量检查 用df命令查看磁盘容量…...
蓝牙之二十一-蓝牙免弹窗配对
这篇文章的缘由来自于一个需求,就是将手机和手机的配对方式变成,变成手机的和蓝牙音箱的配对方式一样,也就是将一部手机的角色变成和蓝牙音箱一样。 就拿前一篇博文一幅图来说。可以看到pc,手机,蓝牙音箱的图标是不同…...

华为ME909S-821在Hi3559AV100平台上NDIS拨号指令流程
华为ME909S-821 4G全网通无线通信模块,4G无线数据卡。 模块图片 Hi3559AV100驱动网络驱动配置 CONFIG_USB_SERIALy CONFIG_USB_SERIAL_OPTIONy CONFIG_USB_SERIAL_WWANy CONFIG_USB_USBNETy CONFIG_NETDEVICESy CONFIG_USB_NET_CDCETHERy 驱动打印 ~ # …...

2005年linux手机系统,三系统五大平台 05年22款智能手机横评
不知道有多少朋友还记得我们中关村在线手机频道于今年初推出的《巅峰对决 2004年14款智能手机横向评测》这个大型专题。时间过得很快,转眼间,又一个365天飞逝而过,也到了我们为2005年智能手机进行点评的时刻。记得去年的这个时候,…...

2022-2028全球过氧化氢蒸汽消毒设备行业调研及趋势分析报告
据恒州诚思调研统计,2021年全球过氧化氢蒸汽消毒设备市场规模约 亿元,2017-2021年年复合增长率CAGR约为%,预计未来将持续保持平稳增长的态势,到2028年市场规模将接近 亿元,未来六年CAGR为 %。 本文调研和分析全球过氧化…...

Git详解之五:分布式Git
原文:《Pro Git》 为了便于项目中的所有开发者分享代码,我们准备好了一台服务器存放远程 Git 仓库。经过前面几章的学习,我们已经学会了一些基本的本地工作流程中所需用到的命令。接下来,我们要学习下如何利用 Git 来组织和完成分…...

unity(登录注册用手机号短信验证)
短信验证 1、短信验证我是通过mob的SMSSDK实现的(free) 官网下载:http://www.mob.com/wiki/detailed?wikiSMSSDK_for_Unity3D&id23 2、在mob上注册一个账号,创建应用获得key和secret 替换案例中demo中的key和secret&#x…...

全球与中国吸油产品市场深度研究分析报告
【报告篇幅】:104 【报告图表数】:150 【报告出版时间】:2022年1月 报告摘要 2021年全球吸油产品市场销售额达到了 亿美元,预计2028年将达到 亿美元,年复合增长率(CAGR)为 %(202…...

JVM学习之垃圾回收和垃圾回收器
目录 背景 概述 垃圾定义 为何需要GC 早期垃圾回收 Java的垃圾回收机制 相关算法 标记阶段:引用计数算法 标记阶段:可达性分析算法 对象的finalization机制 使用MAT进行GC Roots溯源 清除阶段:标记-清除算法 清除阶段࿱…...

Highchart 改编风力风向图
基于highchart修改而成的风力风向图 1.替换highchart.js drawpoints方法,替换内容如下: drawPoints: function() {var a, b this.points,c this.chart,d, e, f, g, h, i, j, k;d this.options.marker;var l this.pointAttr[""],m,n this.…...

google map 看经度和纬度
首先打开Google地图,在上面寻找一个地址,然后上下左右移动地图,让这个地址正好处于地图的正中心位置,当您想寻找坐标位置已经处于地图的中心位置的时候,拷贝并粘贴以下代码到你的浏览器地址栏: javascript:…...

java中常用难区分点
程序&进程&线程 程序:是为完成特定任务,用某种语言编写的一组指令集合。即指一段静态的代码。 进程:在执行的程序,从Windows角度讲,进程是含有内存和资源并安置线程的地方。 线程:进程可进一步细…...

linux内存管理页帧管理
linux页帧管理采用伙伴系统算法,与bootmem相比有更快的分配速度,能够快速打找到空闲内存;有效的解决外部碎片。 页帧的处理代码主要在:mm/page_alloc.c中 I.主要数据结构 i.页描述符struct page 内存管理的核心是页帧管理&#x…...
如何写博客
Markdown学习 标题 一级标题:一个井号加空格#; 二级标题:##; 。。。。。。 最多六级标题 字体 粗体:两边都加两个星号** 斜体:两边都加一个星号* 引用 格式:用大于号加空格> https…...

kafka安装java,kafka安装,管理,以及常见问题的解决【如:服务端是ok的,java客户端却始终调不通】...
安装步骤:下载 http://kafka.apache.org/downloads.html解压tar -zxvf kafka_2.10-0.8.1.1.tgzcd kafka_2.10-0.8.1.1启动服务: 首先启动zookeeper服务bin/zookeeper-server-start.sh config/zookeeper.properties &启动Kafkabin/kafka-server-…...

市场调研报告-全球与中国工业废水处理化学品市场现状及未来发展趋势
根据QYR(恒州博智)的统计及预测,2021年全球工业废水处理化学品市场销售额达到了 亿美元,预计2028年将达到 亿美元,年复合增长率(CAGR)为 %(2022-2028)。地区层面来看&…...

java 判断手机还是电脑_java web判断手机还是pc机访问
String userAgentrequest.getHeader("user-agent");if(userAgent! null ){userAgent userAgent.toUpperCase();}if (userAgent.indexOf("NOKI") > -1 || // Nokia phones and emulatorsuserAgent.indexOf("ERIC") > -1 || // Ericsson W...

leetcode122 买卖股票的最佳时机II
题目 给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。 在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买,然后在 同一天 出售。 返回 你能获得的 最大 利润 。 示…...

作为一个Android程序员,我的头条面试经历分享,技术详细介绍
一、自我介绍 应该算是起点比较高吧!985大学毕业后面一直在国外读研。之前准备面试微软但是可能经验不够,没有通过。经过朋友介绍我准备回国,积累一些开发经验。于是我面试了国内大厂BATJ,还有一些其他比较知名的公司,…...

sex在c语言中,2003年4月全国高等教育自学考试计算机软件基础(一)试题
}printf (“x%d,y%d,z%d”,x,y,z);}A.x4,y4,z1 B.x5,y4,z1C.x5,y4,z2 D.x5,y5,z119.C语言中,下列定…...

j2me游戏开发之手机键值
1.机型:三菱M350/M750 键 键值 对应16进制 左右软键 无定义 - OK键 -6 FA 上键 -1 FF 下键 -2 FE 左键 -3 FD 右键 -4 FC 拨号 -5 FB2.机型&…...

SpringBoot整合FastDFS文件上传出现java.net.SocketTimeoutException: Read timed out异常信息
不止是FastDFS文件上传,其他的分布式文件上传或普通文件上传,出现这个问题无非两个原因: 1、连接不到服务器 2、到达了连接服务器的超时时间 先排除是不是连接不上tracker的可能。 先传一个比较小的文件,如果小文件可以上传成功…...

多普达A6288(HTC G3)手机获取root权限以及删除系统自带软件方法
经本人测试验证,完全有效!希望能给广大的“爱折腾”的朋友们一个参考! A.不建议刷机,毕竟是行货嘛,嘿嘿。 B.使用软件获取root权限。随着android系统版本越来越高,软件也越来越丰富!这里只说明如…...

植物大战僵尸:学会使用人造指针
通过向游戏中注入一段特殊的汇编代码,实现自动获取动态地址,省略找基址的麻烦。该方法适用于游戏基址层数过多无法直接获取到基址,游戏根本无法找到基址。 1.打开CE工具并附加游戏进程,首先通过遍历的方式找到阳光的动态地址&…...

全球与中国无菌润滑凝胶市场现状及未来发展趋势(2022)
根据QYR(恒州博智)的统计及预测,2021年全球无菌润滑凝胶市场销售额达到了 亿美元,预计2028年将达到 亿美元,年复合增长率(CAGR)为 %(2022-2028)。地区层面来看࿰…...

量子计算机线路和算法,量子计算机_量子算法和物理实现.pdf
/ 年第 卷第 期CN431258TP- 计算机工程与科学 2012 34 &#x…...

Vue v2.4中新增的$attrs及$listeners属性使用教程
前言 多级组件嵌套需要传递数据时,通常使用的方法是通过vuex。如果仅仅是传递数据,而不做中间处理,使用 vuex 处理,未免有点杀鸡用牛刀。Vue 2.4 版本提供了另一种方法,使用 v-bind”$attrs”, 将父组件中不被认为 pr…...

2022-2028全球过氧化氢蒸汽灭菌系统(VHP灭菌系统)行业调研及趋势分析报告
据恒州诚思调研统计,2021年全球过氧化氢蒸汽灭菌系统(VHP灭菌系统)市场规模约 亿元,2017-2021年年复合增长率CAGR约为%,预计未来将持续保持平稳增长的态势,到2028年市场规模将接近 亿元,未来六年…...

The Clock for Mac v4.5.1 菜单栏日历/世界时钟
The Clock 是一款精美的菜单栏世界时间应用。可以设置时区偏移,日出和日落,昨天/今天等等。您可以调整颜色主题、自定义菜单栏时间样式等等 The Clock for Mac v4.5.1 菜单栏日历/世界时钟...

蓝牙耳机打电话流程hci.log解析
转载于https://www.jianshu.com/p/05cf5a8e8453 首先 通过工具打开btsnoop_hci.log文件 具体工具可自行搜素 我用的是这一款Frontline Protocol Analysis System Frontline Protocol Analysis System下载地址 关于Headset信息操作部分可以直接看Hands-Free 先简述一下蓝牙接…...

通过浏览器geolocation属性获取经度和纬度(1)
网页获取用户位置信息的办法1 调用百度地图的地图标注功能,通过百度地图API获取对应的经度和纬度进而获取地区信息 优点是比较准确,缺点是需要用户自己选择位置2 通过H5 geolocation属性获取经度和纬度,优点是用户只需要点击允许获取即可&…...

Tomcat漏洞总结复现
目录简介Tomcat目录结构及介绍CVE-2017-12615漏洞描述漏洞原理影响范围复现过程修复参考CVE-2020-1938漏洞描述漏洞原理影响范围复现过程修复参考CVE-2019-0232漏洞描述漏洞原理影响范围复现过程修复参考Tomcat8弱口令war包部署漏洞描述影响范围复现过程修复简介 Tomcat是Apach…...

第一天初识HTML
文章目录一、什么是web前端?(C/S、B/S)二、HTML介绍2.1、什么是HTML?2.2 、HTML的优点三、环境配置和浏览器说明3.1、 环境配置(建议使用sublim Text,操作方便易上手)3.2、HTML语法3.3、网页的分…...

华为手机信息不弹屏了为什么_华为手机短信不提醒如何解决?四种方法来帮你!...
华为手机短信提醒设置方法:1)检查当前设置的默认短信应用是哪个应用。①点击桌面“设置”图标。②找到“应用程序管理”。③选择“默认应用设置”。④选择“信息”。⑤可以看到当前正在使用的默认短信应用名称。如果使用的是第三方短信应用,请将“信息”…...

MIKE 21 教程 2.3 水动力模块教学:求解方程与参数设置(Solution Technique),水深校正设置(Depth Correction)
上一节讲解了水动力模块的基本设置:网格导入,时间步长设置与模块选择 MIKE 21 教程 2.2 Domain, Time, Module Selection设置教学 目录 1 Solution Technique 求解技术 1.1 主时间步长与模块时间步长的说明 1.2 CFL值的说明 2 Depth Correction 深…...
无连线的Linux——蓝牙的基础
Linux Without Wires The Basics of Bluetooth 蓝牙技术用于短距离(1米至100米)的通信。 它是最广泛的无线技术,根据功率和通信范围分为多个类别蓝牙是基于分组的协议,并具有主从结构。 它工作在2400MHz和2483.5MHz频率范围之间&a…...

vscode字体图标
1、首先进入字体图标网站https://www.iconfont.cn/https://icomoon.io/2、选好需要的图标,点击生成3、生成好之后点击下载4、将压缩包里面的fonts文件夹复制到html文件根目录4、打开style.css,复制这段到我们的css的style里 5、打开刚才下载的压缩包里面的html文件,复制我们需…...

filter 过滤器用户登录并判断是否属于电脑端或者手机端访问
package com.probiz.estorepf.authorityInterceptor; import javax.servlet.http.HttpServletRequest; public class HttpRequestDeviceUtils { /**Wap网关Via头信息中特有的描述信息*/ private static String mobileGateWayHeaders[]new String[]{ "ZXWAP&…...

ORACLE LOG的管理
1 CREATE OR REPLACE PACKAGE PLOG IS2 /**3 * package name : PLOG4 *<br/>5 *<br/>6 *See : <a href"http://log4plsql.sourceforge.net">http://log4plsql.sourceforge.net</a>7 *<br/>8 *<br/>9 *Objectif : Generic tool...

2022-2028全球过氧化氢蒸汽灭菌器(VHP灭菌器)行业调研及趋势分析报告
据恒州诚思调研统计,2021年全球过氧化氢蒸汽灭菌器(VHP灭菌器)市场规模约 亿元,2017-2021年年复合增长率CAGR约为%,预计未来将持续保持平稳增长的态势,到2028年市场规模将接近 亿元,未来六年CAG…...
Java用户注册手机短信验证码校验功能实现
验证用户提交的手机短信验证码,如果验证码错误就跳回到当前页面。在短信验证码未填写或未正确填写时,就关闭底下注册按钮的功能,只有短信验证码通过校验后才打开注册按钮的功能。第二种方式是所有输入项全部填写完成后一并提交给服务器&#…...

华为机试C语言-VLAN资源池
题目描述:https://pycoder.blog.csdn.net/article/details/125175834 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h>struct Node {int start;int end; };int list_index; struct Node node_list[100]; c…...

军品生产过程
对于新入军品这个行业的新人来说,很难找到一个标准、或者程序等,将整个军品研制过程描述展示出来,本文章将系统性的讲述整个研制过程。 一、军品研制过程 军品研制过程分为以下几个过程(可参照GJB 3273):…...

echarts风向图
1.template 2.methods initEcharts() { this.myChart2 Echarts.init(document.getElementById(‘myEcharts2’)) this.myChart2.setOption({ title: { text: ‘测试’, }, tooltip: {}, angleAxis: { type: ‘category’, data: [ ‘N’, ‘NNE’, ‘NE’, ‘ENE’, ‘E’, ‘…...
蓝牙设计 低功耗
1. 问:什么是蓝牙通信? 答:蓝牙通讯最初设计初衷是方便移动电话(手机)与配件之间进行低成本、低功耗无线通信连接,现在已经成为IEEE802.15标准,得到全球上万家厂商支持。 2. 问࿱…...

国际珠宝及宝石业界权威的JNA大奖在香港发布
获国际珠宝及宝石业界高度赞誉的JNA大奖,第八届颁奖典礼暨晚宴在一众业界先驱和领袖参与下,昨晚在香港完满举行。由Informa Markets主办,JNA大奖表扬及嘉许为业界就卓越表现、创新意念、最佳商业实务和杰出业绩等范畴定下高水平的企业家和公司…...

CF:1632C. Strange Test(思维)
题目链接 两种情况: 1.a一直加,加到一定程度与b或等于b 2.b一直加,加到一定程度与a或等于b 加的最长情况为两数之差。 #include <bits/stdc.h> using namespace std; int a,b;void solve(){cin>>a>>b;int ansb-a;for(…...

全球与中国发泡脱脂剂市场现状及未来发展趋势
2020年,全球发泡脱脂剂市场规模达到了 亿元,预计2027年将达到 亿元,年复合增长率(CAGR)为 %。 本报告研究全球与中国市场发泡脱脂剂的产能、产量、销量、销售额、价格及未来趋势。重点分析全球与中国市场的主要厂商产品特点、产品规格、价格、…...

全球害虫控制收入预计2028年达到231.6亿美元
内容摘要 针对过去五年(2017-2021)年的历史情况,分析历史几年全球害虫控制总体规模,主要地区规模,主要企业规模和份额,主要产品分类规模,下游主要应用规模等。规模分析包括销量、价格、收入和市…...

三星手机 SM-G9730 ROM包
三星手机 SM-G9730 ROM包 链接:https://pan.baidu.com/s/132Ub3CXSSeNUJ0BuKIOpkA 提取码:re6e...

浅析 vSAN 磁盘组架构和缓存盘的“消亡”
一、vSAN 中的 DiskGroup 架构的问题与应对思路回顾 如何将分散在多个服务器中的本地盘资源整合成集群范围可用的“共享存储资源池”,是超融合架构中的一项关键技术。在 vSAN 中,这项技术是通过“盘组(DiskGroup)”来实现的。 1.…...

vue 重新加载组件 较友好方法
使用v-if控制router-view的显示或隐藏(v-if会把事件监听器和自组件适当的销毁或者重建) 使用provide / inject组合解决自组件层级比较深的问题 使用this.$nextTick()实现页面异步刷新 provide / inject 就是父组件中使用provide提供变量(对象或者是一个…...

vim 常用命令思维导图(持续更新)
文章目录vim 常用命令思维导图(持续更新)思维导图plantUML 源码源码说明声明vim 常用命令思维导图(持续更新) 思维导图 plantUML 源码 startmindmap https://plantuml.com/mindmap-diagramcaption beat title vim 常用命令*[#O…...

linux 账户和权限
超级用户:root 普通用户: 程序用户:如系统中安装的apache服务器的用户,用户只去管理某一类程序。 [rootlocalhost ~]# id ftp uid14(ftp) gid50(ftp) groups50(ftp) [rootlocalhost ~]# id apache uid48(apache) gid48(apache) groups48(apache) 组账号 基本组…...

Linux网络编程——协议(C/S模型进行通信)
文章目录协议:分层模型结构:网络字节序:IP地址转换函数:socaddr地址结构:socket函数:CS模型TCP通信服务端:客户端:协议: 一组规则。 分层模型结构: OSI七层模型:物、数、网、传、会、表、应 TCP/IP 4层模型。网(链路层/网络接口层)、网、传…...

LeakCanary简要原理
首先需要知道ReferenceQueue(引用队列):public static void main(String[] args) {Activity activity new Activity(); // 模拟ActivityReferenceQueue<Activity> queue new ReferenceQueue<>(); // 引用队列WeakReference<…...

嵌入式行业入门指导---知乎转载【转】
此文是本人在知乎上看的,觉得很好就分享出来了,并不是本人原创 转自:https://www.zhihu.com/question/47881392 作者:shang链接:https://www.zhihu.com/question/47881392/answer/146734937来源:知乎著作权…...
嵌入式Linux学习线路图
我是1999年上的大学,物理专业。在大一时,我们班里普遍弥漫着对未来的不安,不知道学习了物理后出去能做什么。你当下的经历、当下的学习,在未来的一天肯定会影响到你。毕业后我们也各自找到了自己的职业:出国深造转行做…...

关于IDEA配置本地tomcat部署项目找不到项目工件的问题解答
文章目录一 原因分析二 解决方案三 具体的操作方法3.1 打开项目结构找到工件3.2 添加具体的工件内容3.3 配置本地tomcat一 原因分析 可能是之前的项目再次打开后,没有及时配置项目结构中的工件信息,导致配置tomcat中看不到工件的信息 二 解决方案 解决…...

robot_state_publisher不能正常启动的解决之法
问题描述 在跟着古月老师学习ros的过程中,在URDF章节,会遇到执行launch文件时,不能正常启动robot_state_publisher节点的错误。 原因 launch文件中,robot_state_publisher节点标签中的type"state_publisher"应该是ty…...

postman:springMVC用json请求报错400,Bad Request,Required request body is missing
1.首先排查是不是post请求,GET请求是没有请求体的 2.查看json是否有内容(这三个注意) 3.看请求头,两个参数 千万注意,Content-Length这个不能等于0,去掉就行,一般GET请求改成POST请求会有这个毛…...

FluxMap 报错: The mapper returned a null value
在进行Flux的map操作时如果返回的是一个空值,会报错: The mapper returned a null value. 原因是在map操作返回时,会对返回值进行非空校验 原本希望通过filter操作来进行过滤,但实际效果是返回空值时没有进入filter操作. 具体操作我参考了此博客 最终通过天极爱了一个临时类…...

《ROS机器人开发实践》第3章报错
1.编写好listener.cpp和talker.cpp后catkin_make报错: The dependency target "_generate_messages_cpp" of target "talker" does notexist.解决方法:将CMakeLists.txt中的cmake_minimum_required(VERSION 版本号)改为cmake_minim…...

Serif Affinity Publisher v1.10.0.1109 专业桌面出版软件
前言 Affinity Publisher是一款专业桌面出版软件,为用户提供了一个所见所得排版界面,用户可以高效的实现图文排版,其能够有效的支持显示边距、显示参考线、显示网格、显示基线网格、显示列参考线、显示文字排列、预览模式、参考线管理器、网…...

【ROS问题】robot_state_publisher启动失败处理方法
问题描述 在使用ROS/ Rviz功能包显示机械臂模型时,已经将launch文件GUI的显示状态从False改为True,但仍无法显示滑动条,且模型崩溃。具体报错如下: Linux版本:Ubuntu 18.04 LTS ROS版本:Melodic 解决方案…...

ERROR: cannot launch node of type [robot_state_publisher/state_publisher]
ERROR: cannot launch node of type [robot_state_publisher/state_publisher]: Cannot locate node of type [state_publisher] in package [robot_state_publisher]. Make sure file exists in package path and permission is set to executable (chmod x) 运行古月居rviz教…...

java build failed_cordova android build FAILED
$ cordova run androidAndroid Studio project detectedCHCP plugin after prepare hook:config-file set to http://.../chcp.jsonANDROID_HOME/.../Library/Android/sdkJAVA_HOME/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/HomestudioSubproject Path: C...

【BIEE】新建用户,并且赋予组BIconsumer,访问BIpublisher报表报错:检索数据xml时出错...
问题描述 今天新建一个用户用户查看报表,并且赋予该用户属于BIConsumer组,但是在访问报表的时候出现以下两个错: 1.xdo格式类的报表 2.RTF模板制作的报表 解决方案: 出现这个问题的原因是,新用户对于JDBC的连接权限被限…...

ROS中 ERROR: cannot launch node of type [joint_state_publisher/joint_state_publisher]: joint_state_pu
ROS中 ERROR: cannot launch node of type [joint_state_publisher/joint_state_publisher]: joint_state_publisher问题如下问题原因解决方法) 问题如下 ERROR: cannot launch node of type [joint_state_publisher/joint_state_publisher]: joint_state_publisher ROS path…...

Spring Security 之 @EnableGlobalMethodSecurity 方法级安全
默认情况下, Spring Security 并不启用方法级的安全管控. 启用方法级的管控后, 可以针对不同的方法通过注解设置不同的访问条件. EnableGlobalMethodSecurity(prePostEnabled true) public class SecurityConfig extends WebSecurityConfigurerAdapter {} Spring Security 支…...

ROS学习笔记——PCD点云在rviz中显示
pcl实现了这部分功能,直接terminal输入: rosrun pcl_ros pcd_to_pointcloud pcd_name 1(rate) 在上篇的简述中提到了ROS中的点云数据类型,本篇利用在pcl官网下载的一个pcd文件,创建节点发布,转换数据类型并在rviz中显…...

第二章 Publisher 和 Subscriber (Part. 1)
Publiser 简介 Combine 的核心是发布者协议。该协议定义了一种类型的要求,以便能够随时间向一个或多个订阅者传输一系列值。换句话说,你可以将感兴趣的值,用发布者将其用事件的方式发布出去。 发布者可以发出零个或多个值,但只能…...

易筋SpringBoot 2.1 | 第三十一篇:SpringBoot Reactor响应式编程实战一
写作时间:2019-11-30 Spring Boot: 2.2.1 ,JDK: 1.8, IDE: IntelliJ IDEA 1. 说明 此篇从代码层面对响应式Reactor的实战,包括源代码的解析。 2. 核心概念 先看看Reactor的主要角色图: Operators - Publisher(生成者) / Subscriber(订阅者…...

ros-机器人URDF建模问题
參考這篇文章,分分钟解决问题,感谢博主。 参考链接: https://blog.csdn.net/m0_46259024/article/details/105333552 这里总结一下出现的问题。 问题1.roslaunch mbot_description display_mbot_base_urdf.launch报错 [WARN] [1582867522.3…...

SpringSecurity (六) --------- 杂项
目录一、其它权限校验方法二、自定义权限校验方法三、基于配置的权限控制四、CSRF五、认证成功处理器六、认证失败处理器七、登出成功处理器一、其它权限校验方法 我们前面都是使用 PreAuthorize 注解,然后在在其中使用的是 hasAuthority 方法进行校验。SpringSe…...

SpringSecurity 的简单使用
依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId></dependency><!--页面相关包--><dependency><groupId>org.apache.velocity</groupId><…...

关于笔记本电脑连接网络时出现连接受限的解决办法
1,点击我的电脑,右键选择 →管理 2,然后分别点击如下的步骤1,步骤2,步骤3. 3,DHCP如果没有启动没那么右键直接启动 ,已经启动后的重新启动,然后保存后就可以了。...

【操作技巧】VS Code关闭受限模式(工作区信任)
一、发生情况 0.新安装了VS Code 但是打开的时候插件没有启用,同时上方有提示 1.打开VS Code 提示目前处于限制模式下 2.点击了解详细信息后阅读说明得知: 在受限模式下 vscode 将禁用或限制任务、调试、工作空间设置和扩展,来提高安全性。…...

Android系统连接WIFI显示网络连接受限
问题描述 使用Android设备打开设置,选择WIFI输入正确密码连接,会显示已连接,无网络,然后变成网络连接受限,实际可以使用此WIFI进行上网。 问题分析 异常Log D NetworkMonitor/100: PROBE_DNS www.google.com 107ms…...
受限玻尔兹曼机(RBM)与其在Tensorflow的实现
Deep Learning with TensorFlow IBM Cognitive Class ML0120EN Module 4 - Restricted Boltzmann Machine 简介 受限玻尔兹曼机是一种无监督,重构原始数据的一个简单的神经网络。 受限玻尔兹曼机先把输入转为可以表示它们的一系列输出;这些输出可以反向…...
Streaming 101批处理之外的流处理世界
Streaming 101批处理之外的流处理世界 本文整理谷歌Tyler Akidau写的两篇文章,对于技术人员来理解大数据计算中的一些概念非常有用。原文写于2015年,所以对有些问题的是不准确的,但是不影响文章所表达的主要宗旨。 前序 流处理在大数据当中是…...

SELinux 受限用户和非受限用户
每个 Linux 用户都使用 SELinux 策略映射到一个 SELinux 用户。这允许 Linux 用户继承对 SELinux 用户的限制。通过以 root 身份运行命令:semanage login -l可以看到此 Linux 用户映射: Login Name SELinux User MLS/MCS Range …...

Flink批处理中的增量迭代
对某些迭代而言并不是单次迭代产生的下一次工作集中的每个元素都需要重新参与下一轮迭代,有时只需要重新计算部分数据同时选择性地更新解集,这种形式的迭代就是增量迭代。增量迭代能够使得一些算法执行得更高效,它可以让算法专注于工作集中的…...

关于网络受限的几种解决办法
首先说明一下,若是网络受限,则肯定不是网线的故障,也不会是DNS的问题,笔者认为问题是出现在网卡配置或IP设置的问题上。可以依次尝试如下方法: 1、直接将以太网适配器进行禁用再启用,打开网络和共享中心就…...

通过网络ADB调试
### 获取EVB板的IP地址192.168.1.159 adb connect 192.168.1.159 adb devices List of devices attached 192.168.1.159:5555 device ### adb登陆EVB板子调试 adb -s 192.168.1.159:5555 shell ### 从PC端上传文件test-file到EVB板的目录/userdata adb -s 192.168.1.159:55…...

vscode关闭受限模式(工作区信任),启用调试等功能
>查看一次性解决方法 某一次打开 vscode 发现不能使用格式化代码了,也无法进行调试。提示信息显示 vscode 正处于受限模式: 点击了解详细信息后阅读说明得知: 在受限模式下 vscode 将禁用或限制任务、调试、工作空间设置和扩展…...

vscode关闭受限模式(工作区信任)
打开 vscode 发现不能使用格式化代码了,也无法进行调试。提示信息显示 vscode 正处于受限模式: 点击了解详细信息后阅读说明得知: 在受限模式下 vscode 将禁用或限制任务、调试、工作空间设置和扩展,来提高安全性。 点击管理将跳…...

Unity的静态批处理和动态批处理
什么是批处理 为了将物体绘制到屏幕上,引擎必须向图像API(例如OpenGL、Direct3D)发送一个draw call指令。每一次draw call就可以大致理解为一个渲染批次(batch)。Draw call属于资源密集型的指令,图形API要…...

Java适配器模式(转接口)
定义两个接口当作数据线插口,比如说是安卓的线插苹果手机一样,这时候就需要一个转接口了,定义一个转接口类,并使他继承其中一个插口,然后再把另一个插口做他的属性(注意,此处需要一个方法传参&a…...

metersphere使用篇-接口测试
如果你们的项目需要接口自动化测试来提升效率,如果你们已经开始使用postman、jmeter那么这个工具是可以帮助到你的,如果不会安装请参考安装教程 https://blog.csdn.net/zhao103804/article/details/115952812 1.创建项目 系统设置-项目管理 新增环境配…...
微信小程序开发调用接口
今天我们自己调用自己商城中的接口 以下是简单的示例 这是自己的目录结构,我选择的是index1来开发 首先在 index.js中想写逻辑代码 其中page里面的data里面是前台展示时的一些数据,而onload里面是调用的接口,调用的方式为get调用ÿ…...

小白分分钟学会,简单四步,直接把sql直接转换成接口服务java
单表的增删改查不需要我们编写,可以一键自动生成。这里我们主要讲如何实现自定义接口,或者在项目进行中需要增加接口的情况。 此次演示内容对个人的编程技能要求极低,会写sql即可写服务,只需简单四步。 1.编写sql语句 select *…...

接口(interface)与类(class)的实例互相转换
接口就是类(事物)的标准,它规定了类(事物)的方法和属性.一个类(事物)要实现一个接口的话,就必须实现它里面的方法和属性.单一类(事物)我们就可以这样简单的理解,对于多个类ÿ…...

GoLang之接口转换的原理(8)
文章目录 GoLang之接口转换的原理(8)GoLang之接口转换的原理(8) 通过前面提到的 iface 的源码可以看到,实际上它包含接口的类型 interfacetype 和 实体类型的类型 _type,这两者都是 iface 的字段 itab 的成员。也就是说生成一个 itab 同时需要接口的类型…...

2022 年江西省职业院校技能大赛高职组信息安全管理与评估赛题 02
高职组“信息安全管理与评估”赛项任务书 赛项时间9:00-13:30,共计4小时30分,含赛题发放、收卷时间。 赛项信息赛项内容竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值...

自我评估,职业规划及对计算机专业的理解(大三软件工程学生的第一篇博客)
自我定位职业规划及对计算机邻域的理解 2020-01-09 自我定位: 本人就读于浙工大(仅次于985,211大学)软件工程专业,大三在读,对于学校教学计划掌握程度在80%,能够利用库或API独立完成特定功能…...

【职业评估】澳洲计算机协会(ACS)评估详解
1. ACS评估简介2. ACS评估的四个组别3. 新的职业清单中ACS评估的移民职业及职业评估分析4. ACS职业评估的费用5. ACS的评估周期1. ACS评估简介澳大利亚计算机协会(Australian Computer Society),于1996年成立,是澳大利亚公认的信息…...

职业倾向评估
今天终于舍得抽出时间来第一次评估我的职业倾向。 对现在的专业,我喜欢;对将想要做的职业,我也喜欢。 我向往平凡,绝不甘于平庸。 曾经多少次在求索的路上迷失了方向,磕磕碰碰,跌跌撞撞,最终又一…...

第28课:年度职业价值评估(图文篇)
年度职业价值评估表格来自《远见:如何规划职业生涯3大阶段》一书,可以从 4 个方面评估个人职业状况(也可以帮助你做职业选择)。评估表格如下: 目标领域权重自评分(满分10分)职业价值学习影响力乐趣奖励年度职业价值总分接下来我们分别介绍四个因素、权重、自评分和职业价…...

职业价值评估:用一张表格说明一切
年度职业价值评估表格,来自《远见:如何规划职业生涯3大阶段》,可以从 4 个方面评估个人职业状况(也可以帮助你做职业选择)。评估表格如下:目标领域权重自评分(满分10分)职业价值学习…...

三而竭(数学函数求极限 蛮力)
题目名称:三而竭 时间限制:1000ms内存限制:256M 题目描述 一鼓作气再而衰三而竭。 小艺总是喜欢把任务分开做。 小艺接到一个任务,任务的总任务量是 nnn。 第一天小艺能完成 xxx 份任务。 第二天能完成xk\frac{x}{k}kx … 第…...

Flutter 常用命令
查看当前Flutter版本 flutter --version 升级Flutter SDK flutter upgrade升级脚本会自动从网上获取最新的稳定版本,并在获取后自动执行futterdoctor指令检查环境配置。 管理版本 flutter使用git来管理,所以可以直接使用git相关的命令来升级、回退…...

云计算常用命令
云计算IAAS篇 mysql篇 mysql -uroot -p000000 (使用root账号登录mysql) use mysql (切换到mysql层) show tables; (查询mysql数据库列表) select * from mysql.user where user ‘keystone’\G; (以列表形式查询mysql用户名为keystone的用户权限信…...

Hive的常用HiveQL操作
一、Hive简介 Hive是Facebook开发的构建于Hadoop集群之上的数据仓库应用,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。 Hive是一个可以提供有效的、合理的且直观的组织和…...

c语言小练pintia1-10
1.这道超级简单的题目没有任何输入。你只需要把这句很重要的话 —— “Im gonna WIN!”——连续输出三遍就可以了。注意每遍占一行,除了每行的回车不能有任何多余字符。#include <stdio.h>int main() {printf("Im gonna WIN!\nIm gonna WIN!\nIm gonna W…...

mysql-u-p语句可以接什么参数_Mysql常用语句大全
MySQL 常用语句大全一、连接 MySQL格式: mysql -h 主机地址 -u 用户名 -p 用户密码1、例 1:连接到本机上的 MYSQL。首先在打开 DOS 窗口,然后进入目录 mysql bin,再键入命令 mysql -uroot -p,回车后提示你输密码&#…...

【干货】带你搞定新客ROI评估
作者介绍 花花 曾任职于美团、腾讯、今日头条担任数据分析师。 过上百亿的资源评估,与大家一起成长学习。 1 前言 在前面几期中分享了AB实验、PSM、DID等营销活动ROI评估的方法,这些方法主要是针对老客群体居多,新客作为一类特殊的群体&…...

盘点渗透测试常用工具,新手收藏少走弯路
一般渗透测试员,也称为安全专家,他们主要是对客户的网络或系统进行模拟攻击以发现漏洞。目标是展示恶意攻击者可能在何处,以及如何利用目标网络,在真正的攻击发生之前减轻威胁。渗透测试常用的技术和工具可能有些比较常见…...

财务经历——京东换新服务/常用常新:一次换新经历匹配自己的知识库
一次京东换新服务经历——分享与客服的交涉过程背景叙述一些常识依据“常用常新是什么?”京东换新延保服务“常用常新”公众号产品声明——购物详情交易纠纷矛盾点矛盾总结投诉过程投诉结果“常用常新”并非京东官方客服尽自己所能,但量力而行博客目的背…...

Rxjava常用操作符
just 订阅时依次发出三条数据,不过此方法参数可以有1-9条 Observable.just("Hello", "RxJava", "Nice to meet you")from 作用同just不过是把参数封装成数组或者可迭代的集合在依次发送出来,突破了just9个参数的限制 Stri…...

华为机试题:HJ9 提取不重复的整数(python)
文章目录知识点详解1、set() :创建集合。表示一个无序不重复元素的序列。2、sorted() :对所有可迭代类型进行排序。不改变原始序列,返回排序后的新序列。3、str.join():将序列(即字符串、元组、列表、字典)…...

AirPlay Deamon学习(Linux Daemon)
关于deamon在Linux中是守护进程,而我在做苹果物联网apple tv投屏airplay调用的是apple 底层deamon代码,特做次文档学习,该文章分为对Linux Daemon的学习和AirPlay Deamon学习 一,守护进程概述 Linux Daemon(守护进程&…...

Linux: config: CONFIG_AS_AVX2;as-instr
文章目录 配置as-instr日志配置 这个不是配置的,它是根据binutils是否支持相应的指令来做的。所以还不能只是依赖于config文件来判断有没有配置相关的宏定义。 arch/x86/Makefile# #does binutils support specific instructions?avx2_instr :=$(call as-instr,vpbroadcas…...

LeetCode2094. 找出 3 位偶数(python)
题目 给你一个整数数组 digits ,其中每个元素是一个数字(0 - 9)。数组中可能存在重复元素。 你需要找出 所有 满足下述条件且 互不相同 的整数: 该整数由 digits 中的三个元素按 任意 顺序 依次连接 组成。 该整数不含 前导零 该整…...

【错误包】「go语言」项目中设计适合自己的错误包——通过AST自动生成代码和MD文档
文章目录一、如何设计errors错误包1. go的error和其他语言的trycatch的区别2. 常用的errors、fmt和pkgerrors错误处理包3. 使用errors打印调用栈4. 使用wrapf保存和打印error错误栈5. 如何设计错误码更加科学二、自定义错误包1. 自定义错误码2. errors实现withcode模式和实现co…...

【CSAPP】进程 | 上下文切换 | 用户视角下的并发进程
💭 写在前面:本文将学习《深入理解计算机系统》的第六章 - 关于异常控制流和系统级 I/O 的 进程部分。CSAPP 是计算机科学经典教材《Computer Systems: A Programmers Perspective》的缩写,该教材由Randal E. Bryant和David R. OHallaron 合著…...

数组模拟单链表
实现一个单链表,链表初始为空,支持三种操作: 向链表头插入一个数; 删除第 k个插入的数后面的数; 在第 k个插入的数后插入一个数。 现在要对该链表进行 M次操作,进行完所有操作后,从头到尾输出整…...

03 - 初识Linux进程
---- 整理自狄泰软件唐佐林老师课程 查看所有文章链接:(更新中)Linux系统编程训练营 - 目录 文章目录1. 进程理论状态切换1.1 问题1.2 进程生命周期1.3 Linux进程基本概念1.4 Linux进程生命周期1.5 Linux进程状态剖析1.6 Linux进程必知必会1.…...

2023年产品经理需要考的证书——NPDP,含金量高,666
产品经理国际资格认证NPDP是国际公认的唯一的新产品开发专业认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 【认证机构】 产品开发与管理协会(PDMA)成立于1979年…...

OSPF+MGRE实验
实验要求: 1、左边三台设备配置OSPF 10,区域0; 2、右边为OSPF 1 中间是Area0,下挂Area1和Area2 3.两个进程之间有ISP设备,需要访问公网 4.OSPF 1区域零中,中心设备不启动动态路由协议,配置MGRE …...

模块化技术
前端模块化1.什么是前端模块化将复杂的程序根据规则或者规范拆分成若干模块,一个模块包括输入和输出模块化的内部数据和实现是私有的,对外暴露一些接口与其他模块进行通信2.前端模块化的背景前端模块化是一种标准,不是实现理解模块化是理解前…...

【Java版oj】day13参数解析、跳石板
目录 一、参数解析 (1)原题再现 (2)问题分析 (3)完整代码 二、跳石板 (1)原题再现 (2)问题分析 (3)完整代码 一、参数解析 &…...

腾讯云云服务器S5性能评测
腾讯云服务器标准型S5实例CPU采用Intel Xeon Cascade Lake或者Intel Xeon Cooper Lake处理器,主频2.5GHz,睿频3.1GHz,标准型S5云服务器基于全新优化虚拟化平台,配有全新的Intel Advanced Vector Extension (AVX-512) 指令集&#…...

【Vue3 基础加餐篇】07.key 的作用源码解析
Vue 中增加 key ,是为了更精准的定位到元素,从而减少渲染。那具体这个更精准的定位是什么?以及为什么能减少渲染呢?我们在这一章节讲述。 虚拟 DOM 要聊这个之前,必须要有虚拟 DOM 的概念,这个不得不聊。 虚拟对象就是一种用来描述真实 DOM 的 js 对象。这样我们就可以…...

附录3:Anolis 龙蜥 下载
以语雀 文档为准 视频演示 点击查看【bilibili】 官网:https://openanolis.cn/ | 7.7 正式版 | https://mirrors.openanolis.cn/anolis/7.7/isos/GA/x86_64/ | | — | — | | 7.9 正式版 | https://mirrors.openanolis.cn/anolis/7.9/isos/GA/x86_64/ | | 7.9 优…...

u盘被苹果电脑磁盘抹掉了怎么恢复 ?三种实用方法请收好
u盘如此重要,然而和其他存储设备一样,会因删除、格式化、损坏等原因而丢失数据?u盘被苹果电脑磁盘抹掉了怎么恢复 ?在这里,易我小编会讲解苹果电脑的数据恢复的相关操作方法。 一、u盘的简单介绍 U盘是一种小型存储设…...

Android绘制——自定义view之onLayout
简介 在自定义view的时候,其实很简单,只需要知道3步骤: 测量——onMeasure():决定View的大小,关于此请阅读《Android自定义控件之onMeasure》布局——onLayout():决定View在ViewGroup中的位置绘制——onD…...

我的 System Verilog 学习记录(11)
引言 本文简单介绍 SystemVerilog 的其他程序结构。 前文链接: 我的 System Verilog 学习记录(1) 我的 System Verilog 学习记录(2) 我的 System Verilog 学习记录(3) 我的 System Verilo…...

【测试开发篇4】测试模型
目录 一、软件测试V模型 编码前 概要设计: 详细设计: 编码后: 单元测试&集成测试 系统测试 验收测试 V模型的特点 优点: 缺点: 二、软件测试W模型 编码之前: 编码的时候: 编…...

DETR网络模型构建
这篇文章主要为记录DETR模型的构建过程 首先明确DETR模型的搭建顺序:首先是backbone的搭建,使用的是resnet50,随后是Transformer模型的构建,包含编码器的构建与解码器的构建,完成后则是整个DETR模型的构建 构建代码在detr.py文件中…...

Golang实现十类排序算法对比展示
排序算法分类实现 冒泡排序 时间复杂度:O(n^2)空间复杂度:O(1)稳定性:稳定特点:简单易懂,但效率较低,适用于数据量较小的情况。 排序过程: 从第一个元素开始,依次比较相邻的两个…...

day11-函数作业
编写一个函数,交换指定字典的key和value。 例如:dict1{a:1, b:2, c:3} --> dict1{1:a, 2:b, 3:c} def exchange_num(dict1):new_dict {}for key in dict1:new_key dict1[key]new_value keynew_dict[new_key] new_valuereturn new_dict dict1{a:1, b:2, …...

Leetcode.1292 元素和小于等于阈值的正方形的最大边长
题目链接 Leetcode.1292 元素和小于等于阈值的正方形的最大边长 Rating : 1735 题目描述 给你一个大小为 m x n的矩阵 mat和一个整数阈值 threshold。 请你返回元素总和 小于或等于 阈值的正方形区域的最大边长;如果没有这样的正方形区域,则…...

css元素定位:通过元素的标签或者元素的id、class属性定位,还不明白的伙计,看这个就ojbk了!
前言 大部分人在使用selenium定位元素时,用的是xpath元素定位方式,因为xpath元素定位方式基本能解决定位的需求。xpath元素定位方式更直观,更好理解一些。 css元素定位方式往往被忽略掉了,其实css元素定位方式也有它的价值&…...

敬伟PS教程【A01-A10】
文章目录新建文档页面详细内容如何再次修改文件参数修改图像大小像素与分辨率的关系:打开文档存储文档常用文件格式关闭开工前准备图层基本知识图层面板创建图层图层操作画面查看视图旋转基本移动操作新建文档 ①可以点击顶部菜单:编辑-首选项-常规 勾选…...

2023年市场快速恢复,社交资讯营销如何把握新机遇
易观:2023年3月14日,巨量引擎联合易观发布《中国社交资讯市场营销白皮书2023-全域经营 聚量新生》,对中国社交资讯市场发展、未来机会、广告营销诉求以及媒体解决方案进行了深入分析。2023年社交资讯蕴含大量新机遇,可关注下沉交友…...

算法详解-递归
文章目录前言主要内容初级阶乘斐波那契数列汉诺塔数组求和幂运算数组翻转字符串翻转中级全排列子集高级正则表达式匹配N皇后问题总结无限循环栈溢出更多宝藏前言 😎🥳😎🤠😮🤖🙈💭&…...

前端安全-内容安全策略CSP(Content Security Policy)
目录 CSP xss 使用方法 http头部设置 meta标签设置 策略集组成 常见指令 default-src report-uri 示例 指令(属性) 指令值(属性值) CSP学习链接 CSP 内容安全策略,为了页面内容安全而制定的一系列防护策…...

Shell Scripting part1
1.Introduction PS1"$ " ; export PS1[maxwelloracle-db-19c shell_20230320]$ PS1"$ " ; export PS1 $ echo #!/bin/sh > my-script.sh $ echo echo Hello World >> my-script.sh $ chmod 755 my-script.sh $ ./my-script.sh Hello World $ cat...

权威认证 | 腾讯云入选最新IaaS云原生安全报告
近日,国际权威研究机构Forrester发布最新研究报告《The IaaS Platform Native Security (IPNS) Landscape, Q1 2023》(以下简称“IPNS报告”),从IPNS供应商规模、产品类型及重点案例等多个维度进行评估。腾讯云凭借在IaaS云原生安…...

Codeforces Round 859 (Div. 4) A~G
目录 A. Plus or Minus B. Grab the Candies C. Find and Replace D. Odd Queries E. Interview F. Bouncy Ball G. Subsequence Addition A. Plus or Minus 思路:按题目要求输出即可。 void solve() {int a,b,c;cin>>a>>b>>c;if(a-bc)cout<…...

Java实现十类排序算法对比展示
Java实现排序算法 本代码展示了Java中常见的十种排序算法,并对每种算法的时间复杂度、空间复杂度、优缺点进行了说明。 代码中包含了冒泡排序、快速排序、插入排序、选择排序、希尔排序、归并排序、堆排序、计数排序、桶排序、基数排序。 import java.util.ArrayLi…...

BFC块级格式化上下文
一、概念 BFC - Block Formatting Context 块级格式化上下文 BFC的定义,在官方文档到中,是这么介绍BFC的:A block formatting context contains everything inside of the element creating it that is not also inside a descendant elemen…...

用于小规模低成本场景的kafka + eCAL架构设计
Kafka作为存储、性能兼备的消息队列,适用场景很多,伸缩性也很强。如何调节kafka的配置参数,以及设计专题、分区的数量、物理位置,很大程度上影响到整个架构的成败。很多文章是站在数据中心的角度来谈kafka的配置,而对于…...

SpringCloud微服务技术栈.黑马跟学(五)
SpringCloud微服务技术栈.黑马跟学 五今日目标1.初识elasticsearch1.1.了解ES1.1.1.elasticsearch的作用1.1.2.ELK技术栈1.1.3.elasticsearch和lucene1.1.4.为什么不是其他搜索技术?1.1.5.总结1.2.倒排索引1.2.1.正向索引1.2.2.倒排索引1.2.3.正向和倒排1.3.es的一些…...

3.19学习总结
看了一下windows的内核与原理的目录,开始的学习 windows都有哪几大子系统 需要记住: 包括网络子系统,设备管理子系统,内存管理子系统,BIOS加载,调试子系统,GUI子系统,远程通信子系…...

Vue 3.0 全局API
Vue 2.x 有许多全局 API 和配置,这些 API 和配置可以全局改变 Vue 的行为。例如,要创建全局组件,可以使用 Vue.component 这样的 API: Vue.component(button-counter, {data: () > ({count: 0}),template: <button click&qu…...

李沐:《动手学深度学习》的初衷
Datawhale学习 分享人:李沐,动手学深度学习作者本文是李沐在Datawhale学习会上的分享:跟李沐导师,动手学深度学习(点击可跳转)相信大家都听说过 ChatGPT,以及最近发布的 GPT-4。在五年前&#x…...

一文带你看懂大火的“虚拟数字人”
如果现在提到虚拟数字人你还一头雾水的话,那真得好好上网冲浪一下了! 作为和元宇宙一同火起来的概念,虚拟数字人在影视、游戏、动漫等领域早就开始应用,并且颇具规模。虚拟数字人到底能有多火呢?网红虚拟美妆博主柳叶…...

C语言预处理条件语句的 与或运算
C语言预处理条件语句的 与或运算 1.#ifdef 与或运算 #ifdef (MIN) && (MAX) ----------------------------错误使用 #if defined(MIN) && defined(MAX) ---------------- 正确使用 #ifdef (MIN) || (MAX) -----------------------------错误使用 …...

学习Java——注解
目录 元注解 自定义注解 Java中常用的注解 Spring常用注解 Spring中的这几个注解有什么区别:Component 、Repository、Service、Controller 如何自定义一个注解? 注解与反射的结合 每日寄语 元注解 说简单点,就是 定义其他注解的注…...

doris初学笔记
一、doris是什么 Apache Doris是一个现代化的MPP(大规模并行分析)分析型数据库产品。仅需亚秒级响应时间即可获得查询结果,有效地支持实时数据分析。Apache Doris的分布式架构非常简洁,易于运维,并且可以支持10PB以上…...

linux-inotify工具监控文件状态变化总结
linux-inotify工具监控文件状态变化总结 大纲 1 安装2 使用 Inotify 它是在内核 2.6.13 版本中引入的一个新功能,它为用户态监视文件系统的变化提供了强大的支持,允许监控程序打开一个独立文件描述符,并针对事件集监控一个或者多个文件&am…...

版本控制系统(VCS)-Git使用-Introduction
版本控制系统(VCS)-Git使用-Introduction git的使用模式 git的使用模式可以分为本地个人工作模式和团队协作工作模式 本地个人工作模式 本地个人工作模式就是只在本地使用git,用来管理自己的项目或者文件,这个模式中所使用到的命令都是一些基本…...

Git 的 Cherry-Pick
1、什么是 Cherry-Pickcherry-pick 是 Git 版本控制工具中的一个命令,和 commit 、pull 一样,它只是一个命令。cherry-pick 和它的名称一样,精心挑选,挑选一个我们需要的 commit 进行操作。它可以用于将在其他分支上的 commit 修改…...

浅谈 kafka
入门 1、什么是 kafka? apache Kafka is a distributed streaming platform. What exactly dose that mean? Apache Kafka 是消息引擎系统,也是一个分布式流处理平台(Distrib...

湖南中创教育PMP 高手项目经理做好风险管理的10条秘籍
在这个VUCA时代越来越多企业开始重视风险管理。其实项目风险管理的好处是巨大的,如果您以积极的方式处理不确定的项目事件,则可能赚很多钱或提前拿到现金流。结果是您可以最大程度地减少项目威胁的影响并抓住发生的机会。 法则01 将风险管理纳入项目&a…...

logic
管综逻辑 一、简单命题1、直言命题(1) 矛盾关系:必有一真一假(2) 从属关系:上真推下真,下假推上假(3) 上反对关系:至少一假(4) 下反对关系:至少一真2、真假话题型第一步:翻译第二步:找矛盾或反对…...

【Python学习实操】怎么做利用python做岗位的分析报告
文章目录前言本篇以拉勾网为例来说明一下如何获取 Ajax 请求内容一、本文目标二、分析结果1.引入库2.页面结构3.请求参数4.构造请求,解析数据4.获取所有数据总结前言 前两篇我们分别爬取了糗事百科和妹子图网站,学习了 Requests, Beautiful Soup 的基本…...

营销信息管理如何帮助您的业务?
在我们互联的世界中,访问有关您的客户、潜在客户和目标受众的个人数据比以往任何时候都更容易。所有营销人员都应该对触手可及的数据负责。这不再是消费者数据是否推动转化的问题,这是如何最好地利用这些信息的问题。 什么是营销信息管理? 营…...

vue中的axios和proxy代理
引入axiosnpm install axios配置proxy代理,解决跨域问题proxyTable: {"/api": {target: "http://192.168.X.XXX:XXXX", //需要跨域的目标pathRewrite: { "^/api": "" }, //将带有api的路径重写为‘’ws: true, //用与支持w…...

蓝牙模块各种工作模式
摘要:本文主要归纳总结蓝牙模块的不同工作模式,通过蓝牙模块不同的工作模式了解其扮演不同角色时工作的一个基本原理,为更深入的研究蓝牙模块底层的工作机制和技术方案进行铺垫。 1、主设备工作模式 主设备是能够搜索别人并主动建立连接的一…...

基于java+SpringBoot+vue的乐校园二手书交易管理系统设计与实现【源码+论文+演示视频+包运行成功】
博主介绍:专注于Java技术领域和毕业项目实战 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟 Java项目精品实战案例(200套) 目录 一、效果演示 二、…...

Promise与async/await的区别?
Promise与async/await的区别Promiseasync/await作用区别Promise Promise是一个对象,对象和函数的区别就是对象可以保存状态,函数不可以(闭包除外)并未剥夺函数return的能力,因此无需层层传递callback,进行…...

LeetCode刷题记录---数位DP算法
😄 学会数位dp算法,可以连杀好几道力扣困难题,加油~ 🚀题目: 难度题目困难2376. 统计特殊整数困难1012. 至少有 1 位重复的数字困难233. 数字 1 的个数困难面试题 17.06. 2出现的次数🚀学习资料: 数位dp算法,我是跟着灵神学的,感谢灵神!数位 dp 通用模板参考灵神…...

Qt5.12实战之QWidget使用
main.cpp#include "mainwindow.h" #include <QApplication> #include <QDebug>int main(int argc, char *argv[]) {QApplication a(argc, argv);MainWindow w;w.resize(1920,1080);w.setWindowTitle(QStringLiteral( "基于qt5开发的应用程序")…...

Leetcode704——二叉搜索
题目: 数组:704.二分查找 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 要求时间复杂度 O(log n…...

优先级队列的介绍与模拟实现
目录 priority_queue的介绍和使用 priority_queue的介绍 priority_queue的使用 仿函数 堆的调整算法 priority_queue的模拟实现 priority_queue的介绍和使用 priority_queue的介绍 1、优先级队列是一种容器适配器,根据严格的弱排序标准,它的第一个…...

近世代数 笔记和题型连载 第六章(子群)
文章目录基本概念1.子群2.子群判定定理3.群的重要性质4.子半群5.共轭子群6.正规子群相关题型1.证明一个代数系统是另一个代数系统的子群2.证明一个代数系统是另一个代数系统的子群3.判断一个代数系统是否是另一个代数系统的子群4.证明一个代数系统是另一个代数系统的子群5.证明…...

AIGC来了,你的版权还安全吗?
引言 |人工智能生成内容(AIGC)是热度居高不下,据Gartner预计,到2025年,AIGC将占全球所有生成数据的10%,以ChatGPT、Stable Diffusion为代表的现象级应用受到强势追捧,AIGC毫无疑问是强有力的生产…...

生产制造业网络运维监控方案
工业2.0实现“电气化、机械化”,工业3.0实现“自动化、网络化”,工业4.0则旨在实现“数字化、智能化”。随着工业互联网的发展,新兴信息技术和制造业的融合,生产制造产业不断变革,企业开始高度重视“订单供应ÿ…...