火爆 GitHub!这个图像分割神器开源了

【UNet3+】遥感影像分割 在计算机视觉领域,图像分割指的是将数字图像细分为多个图像子区域的过程,其目的是简化或改变图像的表示形式,使得图像更容易理解和分析。本例简要介绍如何使用UNet3+模型实现遥感影像分割。...... 阅读详情

最近全球各大新势力造车公司简直不能再火!看着蹭蹭飙升的股价实在是眼红的不要不要的。而懂行的人都知道,以 Telsa 为首,各大公司都采用计算机视觉作为自动驾驶的技术底座,而其中正是通过图像分割技术,汽车才能分清楚哪里是路,哪里是人。

今天要给大家介绍的这个开源套件,就涵盖业界最前沿的图像分割算法,并效果超群,这就是 PaddleSeg!!OMG,还在等什么?!盘他!盘他!盘他!

除了在自动驾驶技术拥有绝对重要的地位,图像分割技术在抗疫最前线的医疗阵地也发挥了巨大作用!比如基于图像分割技术开发的《CT 影像的肺炎筛查与病情预评估 AI 系统》,可快速识别 CT 影像上的肺炎病灶信息,帮助我们的白衣战士节省了大量诊断和评估时间!

那么图像分割还有哪些应用呢?比如可以做人像分割 + 背景替换。你以为我在旅游?其实我在加班。

还可以做人体解析,同全球冠军模型分析全球冠军运动员的行为轨迹,像《夺冠》里描述的,现在体坛也已经是全面的数字化战争!

我们还可以基于分割技术进一步把彩色图像变素描。

在工业巡检场景中,图像分割技术还可以细致的分割出的表计盘刻度和指针,实现自动读数系统。

遥感图像分割技术还可以帮助国土资源监控保护单位、气象单位等实现地面、大气检测,建筑物检测、农耕用地检测、地块变化检测、地面目标检测、气旋检测等等!

看到这里,你还在等什么?!PaddleSeg又有用、又好玩,在此强烈建议大家去尝试,并点击Star支持一下开源。

点击文末"阅读原文"或以下链接立即Star:

https://github.com/PaddlePaddle/PaddleSeg

那么PaddleSeg到底是个啥呢?去Github上去扒了一下官方的解释:

PaddleSeg是基于飞桨开发的端到端图像分割开发套件,涵盖了高精度和轻量级等不同方向的大量高质量分割模型。通过模块化的设计,帮助开发者完成从训练到部署的全流程图像分割应用。下面就给大家讲讲PaddleSeg的特点和近期更新的内容:

精度全面领先的开源模型

目前PaddleSeg开源了在Cityscapes验证集上达到87% mIoU的语义分割模型是目前业界最高精度的实现。该模型基于Hierarchical Multi-Scale Attention结构,通过损失函数、训练策略、评估方法等方面的优化,相比HRNet的81.5%更是高出了5.5个百分点。

https://github.com/PaddlePaddle/PaddleSeg/tree/release/v2.0/contrib/CityscapesSOTA

国际冠军都在用的PaddleSeg

PaddleSeg不仅能力覆盖全面,而且里面的独立算法还极其优秀!在刚刚结束的神经信息处理系统大会NeurIPS 2020(Conference and Workshop on Neural Information Processing Systems)上,百度团队就是使用PaddleSeg中的HRNet一举夺冠,准确性得分领先第二名0.37,推理速度更是第二名的7倍!!!目前该代码已经开源,链接如下:

https://github.com/PaddlePaddle/PaddleSeg/tree/release/v2.0/legacy/contrib/NeurIPS_SN7

焕然一新的PaddleSeg

是不是感觉PaddleSeg很厉害呢?其实咱们刚刚看到的只是冰上一角而已!近期,随着飞桨框架升级了2.0版本,PaddleSeg也随之进行了升级。在新的版本中,PaddleSeg提供了:

  • 更加丰富的高精度模型算法:包括20+分割网络、50+预训练模型,模型精度均优于其它实现方式。

  • 优秀的动转静功能:PaddleSeg依托飞桨框架集成了优秀的动转静功能,让用户在部署上具有更好性能。

  • 更加灵活易用的开发体验:PaddleSeg在原先配置文件运行方式之外又新增了API接口调用方式,更加灵活易用。

下面将为大家细细分解!

PaddleSeg全景图


更加丰富的高精度模型

PaddleSeg支持U-Net,PSPNet,DeepLabV3+,OCRNet等20多种主流分割模型,提供了Xception、MobileNet、ResNet、HRNet等多种骨干网络,同时目前开源的模型的精度均高于业内同类产品的实现。

为了进一步验证PaddleSeg模型的精度,我们分别在两个主流数据集Cityscapes和PASCAL VOC 2012上和其它同类产品的模型做了详细的对比实验。

下图展示了对比结果。左边模型使用ResNet50做为骨干网络,右边模型使用ResNet101做为骨干网络。可以看到与其它实现相比,PaddleSeg模型的精度明显更加优秀!

Cityscapes数据集对比实验(其中FCN和OCRNet使用HRNet_w18作为主干网络)

基于PASCAL VOC 2012数据集对比实验(FCN和OCRNet使用HRNet_w18作为主干网络)

优秀的动转静功能

基于飞桨框架2.0的PaddleSeg,提供了更加易用完备的动态图体验。虽然动态图在训练过程中更加方便调试,但是在部署上却明显吃力。为此飞桨提供了一套模型动转静的方式,在PaddleSeg中仅需添加一个装饰器并调用API接口paddle.jit.save,即可完成模型的转换。具体我们可以看下面的例子:

  • 定义网络

import numpy as np
import paddle
# 定义了一个简单全连接网络SimpleFcLayer
class SimpleFcLayer(paddle.nn.Layer):
    def __init__(self, batch_size, feature_size, fc_size):
        super(SimpleFcLayer, self).__init__()
        self._linear = paddle.nn.Linear(feature_size, fc_size)
        self._offset = paddle.to_tensor(
            np.random.random((batch_size, fc_size)).astype('float32'))
# 添加装饰器
    @paddle.jit.to_static
    def forward(self, x):
        fc = self._linear(x)
        return fc + self._offset
  • 模型转换

import paddle

fc_layer = SimpleFcLayer(3, 4, 2)
in_np = np.random.random([3, 4]).astype('float32')
input_var = paddle.to_tensor(in_np)
out = fc_layer(input_var)
# 使用paddle.jit.save接口存储模型
paddle.jit.save(fc_layer, "./fc_layer_dy2stat", input_spec=[input_var])

转换成静态图模型做部署就可以获得更好的性能,实现单车变跑车的进化!

更加灵活易用的开发体验

在用户使用体验上,PaddleSeg提供了两种使用方式:

  • 用户通过PaddleSeg中组合好的配置文件,使用简单的命令实现训练到部署的全流程。

  • PaddleSeg还提供了API形式,用户通过几行代码即可实现模型的训练、评估和推理。

结束语

介绍了这么多,小伙伴一定心动了想要跃跃欲试吧?如果大家觉得PaddleSeg给您带来更好的体验,那就请您动动小手, star支持一下!

Github地址:

https://github.com/PaddlePaddle/PaddleSeg

关于文中模型精度对比更详细的数据,可参考

https://arxiv.org/pdf/2101.06175v1.pdf

飞桨官网地址:

https://www.paddlepaddle.org.cn

飞桨开源框架项目地址:

GitHub: https://github.com/PaddlePaddle/Paddle

Gitee: https://gitee.com/paddlepaddle/Paddle

飞桨图像分割套件PaddleSeg项目地址:

GitHub:https://github.com/PaddlePaddle/PaddleSeg

Gitee: https://gitee.com/paddlepaddle/PaddleSeg

基于深度学习的道路图像语义分割 基于深度学习的道路图像语义分割 作者:禅与计算机程序设计艺术 / Zen and the Art of Computer Programming 1. 背景介绍 1.1 问题的由来 随着自动驾驶技术的快速发展,道路图像语义分割技术在 阅读详情

相关推荐

KUKA机器人编程实战:5分钟搞定组输入与组输出的信号配置(附代码示例)

本文详细介绍了KUKA机器人编程中组输入与组输出的信号配置方法,通过5分钟快速掌握核心技巧。文章包含信号声明语法、典型配置流程及高级应用技巧,并附有代码示例,帮助工程师高效实现机器人与外部设备的通信。

efc123456的博客 852

搭建PaddleSeg环境

Liunx下配置PaddleSeg

weixin_43978059的博客 901

当KCF遇见卡尔曼滤波:视觉跟随算法的动态优化实战

本文探讨了KCF算法与卡尔曼滤波在视觉跟随算法中的动态优化实践,通过深度融合策略提升目标跟踪的鲁棒性和实时性。特别针对机器人应用场景,详细解析了在Jetson等嵌入式平台上的优化技巧,包括计算图优化、内存访问优化和多线程流水线设计,实现了30FPS@1080p的稳定跟踪性能。

sugar的博客 957

PaddleSeg的训练与测试推理全流程(超级详细)

PaddleSeg的训练与测试推理全流程(超级详细)

Mintary的博客 3282

高通camera open代码流程(hal到kernel)

内容:简单介绍Camera open代码调用流程,从HAl到kernel。(api1+hal1) 前言 Android camera api和hal对应关系。安卓在版本更新过程中,camera相关代码也经历了几个版本的更新,表现为camera HAL版本更新(HAL1->HAL2->HAL3),camera API版本更新(camera API1->camera API2),接下...

oxoo123的专栏 4277

simulink可控励磁同步电机模型分析

他励同步电机模型分析

qq_26681609的博客 5552

首篇!最全的全景分割综述(RGB图像/医学图像/LiDAR)

点击下方卡片,关注“自动驾驶之心”公众号ADAS巨卷干货,即可获取点击进入→自动驾驶之心【分割】技术交流群后台回复【分割综述】获取语义分割、实例分割、全景分割、弱监督分割等超全学习资料!摘要用于视频分析的图像分割在智慧城市、医疗保健、计算机视觉和地球科学以及遥感应用等不同的研究领域中发挥着重要作用。在这方面,全景分割是最新的杰出成果之一。后者是语义和实例分割融合的结果。显然,全景分割目前正在研究中...

CV_Autobot的博客 4729

深入解析雪球网股票行情数据爬取:基于WebSocket与API的实时数据获取技术实践

本文详细介绍了如何使用Python爬虫技术获取雪球网的股票行情数据,涵盖了WebSocket实时数据连接和RESTful API接口调用两种主要技术方案。完整的WebSocket客户端,支持实时行情订阅和数据处理功能丰富的API客户端,支持多种数据类型的获取数据存储和管理系统,使用SQLite进行数据持久化实时监控和预警系统,支持自定义预警规则技术指标计算,提供基本的数据分析功能。

2201_76125261的博客 1257

【飞桨AI实战】人像分割:手把手带你入门PaddleSeg,从模型训练、推理部署到应用开发

本文通过一个计算机视觉领域中最基础的任务之语义分割,带领大家熟悉百度PaddleSeg深度学习框架中的各种组件,覆盖了数据准备、模型训练评估、推理部署的全流程,最后通过应用开发实现了一个简单的前后端分离项目。

u010522887的专栏 6291

【LLC快速上手系列】如何在LLC谐振里优雅地调死区时间?

用示波器死盯Vds波形,找到ZVS临界点;别听“经验值”,亲自调才准;死区时间并非越短越好,也不是越长越稳,而是要“刚刚好”;用热成像看MOSFET温升变化,ZVS调好了,温度马上掉2~5℃;轻载难ZVS?适当提升频率 or 降低Lr可破!

weixin_43199439的博客 497

【Codecs系列】x265编码器(十二):子像素运动搜索

在基于块运动补偿的视频编码框架中,运动搜索是最为重要的环节之一,同时也是编码端最为耗时的模块。运动搜索包括整像素运动搜索和子像素运动搜索,其中整像素运动搜索已经有很多快速算法,比如经典的三步搜索法、菱形搜索、六边形搜索以及TZSearch等等;但子像素搜索的快速算法却比较少,本文主要讲解x265编码器中的子像素搜索方法以及相关的快速搜索方法。

优快云明星博主,认证博客专家,视频、Matlab领域优质创作者。 749

遥感影像为什么需要分块处理

在具体的应用中,例如深度学习的训练过程,我们通常需要将遥感影像切割成较小的样本,如512x512像素的图像块,以适应GPU的内存限制。这个函数的参数是块的左上角坐标(x,y)和块的大小(cols,rows),返回的是一个二维数组,包含了块内的所有像素值。对于每个垂直条带,如果条带的右边界超过了图像的宽度,那么就将条带的宽度设置为从当前位置到图像右边界的距离,否则就使用。对于每个块,如果块的下边界超过了图像的高度,那么就将块的高度设置为从当前位置到图像下边界的距离,否则就使用。其实是有的,比如,请看下图。

qq_35662333的博客 1550

基于Simulink的PMSM轮毂电机崎岖路面悬架协同控制仿真

本文完成了基于Simulink的PMSM轮毂电机崎岖路面悬架协同控制仿真,实现了:✅ 构建了四轮独立驱动+主动悬架高保真整车模型✅ 实现了Skyhook主动悬架控制✅ 设计了驱动-悬架状态共享与协同决策机制✅ 验证了5 m/s高速下连续颠簸路面稳定通过能力✅ 为高性能移动机器人提供一体化底盘解决方案。

xiaoheshang_123的博客 190

火爆 GitHub!这个图像分割神器究竟有什么魅力?

许多计算机视觉任务需要对图像进行智能分割,以理解图像中的内容,并使每个部分的分析更加容易。今天的图像分割技术使用计算机视觉深度学习模型来理解图像的每个像素所代表的真实物体,这在十年前是无法...

zandaoguang的博客 167

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

火爆 GitHub!这个 AI 神器究竟有什么魅力?

图像分割(image segmentation)技术是计算机视觉领域的一个重要的研究方向,图像分割是计算机视觉中的一个关键过程。它包括将视觉输入分割成片段以简化图像分析。片段表示目标或目标...

AI科技大本营 476

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

飞桨图像分割套件PaddleSeg初探

PaddleSeg是基于飞桨PaddlePaddle的端到端图像分割套件,内置45+模型算法及140+预训练模型,支持配置化驱动和API调用开发方式,打通数据标注、模型开发、训练、压缩、部署的全流程,提供语义分割、交互式分割、Matting、全景分割四大分割能力,助力算法在医疗、工业、遥感、娱乐等场景落地应用。

skywalk8163的专栏 1665

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

2024年 · 地表最强的十大遥感影像分割模型

最新最强的十大遥感影像分割模型 在遥感影像分析领域,分割技术是理解图像内容、提取有用信息的关键步骤。随着深度学习技术的快速发展,遥感影像分割领域涌现出了许多创新模型。以下是2024年最新最强的十大遥感影像分割模型,它们在精度、效率和应用领域上均展现出卓越的性能。在线体验1. EfficientPS:高效高精度全景分割算法EfficientPS是目前排名第一的高效高精度全景分割算法,在Citysca...

天波风客的博客 3733

2021 年最佳开源软件榜单出炉

公众号关注「奇妙的 Linux 世界」设为「星标」,每天带你玩转 Linux !本文是 InfoWorld2021年公布的《最佳开源软件榜单》翻译稿。InfoWorld 是一家信息技...

easylife206的专栏 1307

如何使用CodeceptJS、Playwright和GitHub Actions构建端到端测试流水线

使用CodeceptJS、Playwright和GitHub Actions构建端到端测试流水线为自动化测试场景提供了强大的解决方案。通过利用 CodeceptJS 和 Playwright 的功能,可以轻松地跨不同浏览器和环境进行自动化测试。GitHub Actions 允许在 GitHub 存储库中无缝集成和自动化测试流程。本文中概述的配置和设置,希望给大家提供参考。

伤心的辣条 374

PaddleSeg之语义分割模型训练

基于百度PaddleSeg模型框架训练自己的数据集进行语义分割应用。

分享视觉、点云、AI、slam等相关技术文章。gitee代码:https://gitee.com/buffalo891/carla_sim.git 2002

YOLOv10实时端到端目标检测

距离上次写YOLOv5已经过去了两年,正好最近用YOLOv10重构了项目,总结下YOLOv10。YOLOv10真正实时端到端目标检测,那么什么是端到端?端到端目标检测是一种从原始数据输入到最终结果输出的直接过程,无需分步骤处理或人工干预。在YOLOv10中移除非最大抑制(NMS),从而减少了推理延迟。

不会代码的小林 2932
上一篇: 最强的Attention函数诞生啦,带给你意想不到的巨大提升!
下一篇: 21个经典深度学习句间关系模型|代码&技巧
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值