Paddle.js 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Paddle.js 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
Paddle.js 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
Paddle.js 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
Paddle.js 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 Apache-2.0
操作系统 跨平台
软件类型 开源软件
开源组织 百度
地区 国产
提 交 者 OSCHINA编辑部
适用人群 未知
收录时间 2020-07-02

软件简介

Paddle.js是百度Paddle的web方向子项目,是一个运行在浏览器中的开源深度学习框架。Paddle.js可以加载提前训练好的paddle模型,或者将paddle hub中的模型通过paddle.js的模型转换工具变成浏览器友好的模型进行在线推理预测使用。目前,paddle.js仅可以在支持webGL的浏览器中运行。

## CPU版本安装命令
pip install -f https://paddlepaddle.org.cn/pip/oschina/cpu paddlepaddle

## GPU版本安装命令
pip install -f https://paddlepaddle.org.cn/pip/oschina/gpu paddlepaddle-gpu

主要特点

模块化

Paddle.js项目基于Atom系统构建,该系统是一个通用框架,可支持WebGL上的GPGPU操作。 它非常模块化,可以通过利用WebGL来更快地执行计算任务。

浏览器覆盖范围

  • PC: Chrome, firefox
  • Mac: Chrome, Safari
  • Android: Baidu App , UC, Chrome and QQ Browser

支持的操作

目前,Paddle.js只支持有限的一组算子操作。如果模型中使用了不支持的操作,那么padde.js将运行失败并提示模型中有哪些op算子目前还不支持。

加载和运行模型

如果原始模型是浏览器友好的model格式, 使用 paddle.load()接在模型。

import {runner as Paddlejs} from 'paddlejs';

const paddlejs = new Paddlejs({
        modelPath: 'model/mobilenetv2', // model path
        fileCount: 4, // model data file count
        feedShape: {  // input shape
            fw: 256,
            fh: 256
        },
        fetchShape: [1, 1, 1920, 10],  // output shape
        fill: '#fff',   // fill color when resize image
        needBatch: true, // whether need to complete the shape to 4 dimension
        inputType: 'image' // whether is image or video
    });

// load paddlejs model and preheat
await paddlejs.loadModel();

// run model
await paddlejs.predict(img, postProcess);

function postProcee(data) {
    // data为预测结果
    console.log(data);
}

对于前输入处理的有关详细信息,请参阅feed文档。

对于得到结果后输出处理的有关详细信息,请参阅fetch文档。

运行Paddle.js提供的转换器脚本

模型转换器需要输入一个Paddle格式的model,可以是Paddle Hub中的model,运行转换器将会得到paddle.js的JSON格式model。

Web友好的model格式

上面的转换脚本生成两种类型的文件:

  • model.json (数据流图和权重清单文件)
  • group1-shard*of* (二进制权重文件的集合)
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (4)

加载中
一窝蜂,重复低水平建设。 在细分领域却都弃如敝履。 比如,没有引导初学者的 Win 版本,比如 .Net 版本。 有时候你以为是主观的问题, 可是实际上恐怕是能力问题。 在别人搞不定的领域也搞不定的, 只能说明自己没有胜过他人的核心能力。
2020/07/30 11:08
回复
举报
.net不适合搞深度
2020/07/30 11:33
回复
举报
什么叫开源,这就道德绑架上了,都是人写出来的,不是凭空生成出来的,如果没有你满意的东西,请动手,你这样就等于是乞讨还嫌钱少
2020/07/31 04:20
回复
举报
错别字,使用 paddle.load()接在模型?加载吧
2020/07/30 10:05
回复
举报
更多评论
发表于AI & 大数据专区
2020/07/03 07:52

Paddle.js 1.0 发布,浏览器中的深度学习框架

Paddle.js 1.0 发布了。Paddle.js 是百度 Paddle 的 web 方向子项目,是一个运行在浏览器中的开源深度学习框架。Paddle.js 可以加载提前训练好的 paddle 模型,或者将 paddle hub 中的模型通过 paddle.js 的模型转换工具变成浏览器友好的模型进行在线推理预测使用。目前,paddle.js 仅可以在支持 webGL 的浏览器中运行。 更新内容: 兼容性 支持在 webGL2.0 和 webGL1.0 的浏览器上运行。例如 chrome、firefox、safari 以及移动...

3
8
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
2018/04/28 23:11

[js]javascript索引

js&jq总结的还是挺棒的: http://www.cnblogs.com/yuanchenqi/articles/5980312.html http://www.cnblogs.com/yuanchenqi/articles/6070667.html 我学了很久没把js学会, 我发现我的路子错了, 一开始就追求大而全.....累死... 好办法应该是迭代式更新知识点.... ECMAScript(4,5) 目前学的是es5 es6其实是ECMAScript 2015. mvc模式和mvvm模式及vue学习思路 - 前端工作的日常: 拿到ui设计图: 切图--> html+css静态布局-->js写一下动...

0
2
发表了博客
2018/09/04 17:47

JS(JavaScript)初始

day43 JS初识 今日内容: HTML: 文档结构 CSS: 修改文档的外观样式 JS:实现页面上的动态 JS文件的引入方式:   1.script标签内写代码 <script> //在这里写你的代码 </script>   2.引入额外的JS文件 <script src="myscript.js"></script>   3.注释(注释是代码之母) // 这里是单行注释 /* 这里是多行注释 */   4.结束符号 JavaScript中的语句要以分号( ; ) 为结束符. 1.JS的历史及ECMAScript   JS ----> Ja...

0
0
发表了博客
2018/06/27 15:45

[JavaScript]-JavaScript的this原理.

#### 一、问题的由来 学懂 JavaScript 语言,一个标志就是理解下面两种写法,可能有不一样的结果。 ```js var obj = { foo: function () {} }; var foo = obj.foo; // 写法一 obj.foo() // 写法二 foo() ``` 上面代码中,虽然obj.foo和foo指向同一个函数,但是执行结果可能不一样。请看下面的例子。 ```js var obj = { foo: function () { console.log(this.bar) }, bar: 1 }; var foo = obj.foo; var bar = 2; obj.foo() // 1...

3
25
发表了博客
2019/08/30 13:29

JavaScript(js)笔记

js注释 JavaScript注释与Java注释相同 // 单行注释 /* 多行注释 */ js五大基本类型:   number(数值型)、string(字符串性)、boolean(布尔型)、undefined类型、null类型 number包括:数值类型、包含整型、浮点型、NaN和Infinity(无穷大)。 关于数组的空间长度问题:   如何获取数组的空间长度:     通过length属性获取数组的空间长度   数组的length详解:     java:只读属性      js:读写属...

0
2
发表了博客
2019/06/05 00:00

JS|JavaScript库

欢迎点击「算法与编程之美」↑关注我们! 本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。 问题描述 在使用JavaScript的时候,为了更加方便快捷的完成一些项目,通常会引用一些框架(库)。目前广受欢迎的库有:jQuery、Prototype、MooTools。所有这些框架都提供针对常见 JavaScript 任务的函数,包括动画、DOM 操作以及 Ajax 处理。 jQuery jQuery是一个轻量级的JavaScript库,它包含以下功能:H...

0
0
2019/06/26 10:23

javascript规范(js)

EMCAScript规范 javascript语言实现,ES6规范(使用babel编译器将es6转换为es5,webpack只支持部分es6): import "jquery"; //返回function export function doStuff() {} module "localModule" {} es5: var o = require('s.js'); export default只有一个,export可以有多个 commonjs规范 nodejs语言实现 require("module"); require("../file.js"); //require返回对象 object exports.doStuff = function() {}...

0
0
2014/11/07 14:33

js 封装 js

define(['jquery'], function($) { var orderSummary = { $el: $('.summary-totals'), updateUrl : '../checkout/orderSummaryContentJson.jsp', cartRemoveUpdateUrl : '../cartridges/cart/subTotalContainer.jsp', orderComfirmSummaryUrl : '../checkout/orderReviewInfoSummaryContainer.jsp', bindChange : function() { this.$el = $('.summary-totals'); if($('.js-estimated').length) { $('.js-estimated').off('chan...

0
0
发表了博客
2014/09/26 16:08

Javascript---Javascript简介

javascript 是一门面向对象的动态语言。虽然在字面中带有java的字样但是千万不能和java混淆。 javascript的主要运用在web开发中,做交互方面的开发让交互变得更加的有意思和人性化。 —————————————————————————————————————————————————————————————————————— 一、提出如下的问题; 1、ECMASCRIPT是什么? 2、javascript和ECMAScript之间的关系? --->EC...

0
1
发表了博客
2019/04/02 15:17

浅谈JS之text/javascript和application/javascript

问题描述: JS在IE8以下浏览器运行异常 代码: <script>标签是这样子写的: <script type="application/javascript"> //执行语句 </script> 这是书写的时候Dreamweaver自动补全的。但是在自己运行的例子中我的script标签写的是: <script type="text/javascript"> //执行语句 </script> 将项目中的标签type属性修改成了text-javascript,然后,然后在IE8一下就可以运行了。 拓展: 最实用的用法,现在各大浏览器已经...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
4 评论
55 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部