Wasm初上手

总之也是为了扩宽技术面吧。。。我也不知道为什么就想试试了,就酱。
参考阅读:极客时间《WebAssembly入门课》
安装wasm的编译器Emscripten。Emscripten 是一个“源到源”语言编译器工具集,这个工具集可以将 C/C++ 代码编译成对应 JavaScript 代码。
参考:Emscripten在Windows上安装
https://www.cnblogs.com/8335IT/p/17693076.html

按照网上的教程git下载完后,执行emsdk.bat update 这些命令,只返回一个空行,没有任何反馈的,或者报错:emsdk.bat : 无法将“emsdk.bat”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
看下有木有安装python,以及环境变量里有木有Python
python安装:https://zhuanlan.zhihu.com/p/623374236?utm_id=0
然后重新开一个命令窗口,如果执行不了就使用管理员权限开。
执行: emsdk install --global latest
emsdk activate latest
设置环境变量 emsdk_env.bat
emcc -v 可以看到版本号了
在这里插入图片描述

在这里插入图片描述

实践一个视频滤镜处理

嗯。。是的,就直接开始实践了。
先简单地复习一下线性代数,然后了解几个基本概念

当我们说到“为视频添加滤镜”时,这一操作里的“滤镜”,主要是指什么?这是 DIP(Digital Image Processing数字图像处理)领域中的一个基本概念 —— “卷积”。
从一个直观的角度来看,对图像进行卷积的过程,其实就是通过一个具有固定尺寸的矩阵(也可以理解为二维数组),来对该图像中的每一个像素点的值进行重新计算的过程。这个过程通常也被称为“滤波”。
而我们现在需要使用一个固定尺寸的矩阵去处理像素点,这个矩阵一般被称为“卷积核”。每一种类型的卷积核都会对图像产生不同的滤镜效果。
卷积的计算过程也十分简单,主要分为以下几个步骤。

  1. 首先将卷积核矩阵翻转 180 度。然后将图像上除最外一圈(考虑到“边缘效应”,我们选择直接忽略边缘像素)的其他各像素点的灰度值,与对应的卷积核矩阵上的数值相乘。
  2. 然后对所有相乘后得到的值求和,并将结果作为卷积核中间像素点对应图像上像素的灰度值。(这里提到的“灰度值”也可以由每个像素点的各 RGB 分量值来进行代替)。
  3. 重复上述步骤,直至图像中所有其他像素点均完成此计算过程。
    RGB分量的最低为0,最高为255,如低于0则相当于=0,255同理。

上手。。上不了一点,线代什么的头大,当年只考了64分的我竟然在这里看线代(挠头),c++更是已经还给老师了,啊。。。
好吧这个初上手就到这里。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/782845.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【PostgreSQL】- 1.4 PostgreSQL 业务规划(创建 Schema)

业务规划与创建 Schemas 如果实际场景,有业务A、业务B、业务C,推荐的方式是在同一个数据库中为每个业务创建不同的 schema。然后,你可以为每个业务创建不同的账户,并赋予这些账户对应业务的 schema 权限。这种方式的好处是&#…

CSS使用clip-path实现元素动画

前言: 在日常开发当中,如果想要开发多边形,一般都需要多个盒子或者伪元素的帮助,有没有一直办法能只使用一个盒子实现呢? 有的:css裁剪 目录 前言: clip-path到底是什么? clip-pa…

【御控物联】 JavaScript JSON结构转换(4):对象To对象——规则属性重组

文章目录 一、JSON结构转换是什么?二、术语解释三、案例之《JSON对象 To JSON对象》四、代码实现五、在线转换工具六、技术资料 一、JSON结构转换是什么? JSON结构转换指的是将一个JSON对象或JSON数组按照一定规则进行重组、筛选、映射或转换&#xff0…

赋值语句还能当判断条件?涨芝士了!

赋值和条件看似是C语言中毫不相关的两个概念,虽然实际过程中我猜测不会有太多这种不太符合常理的情况出现,但是现在在学习的过程中,为了出题而出题总是会整出一些花活出来.....这很难不让人联想起高中时一些大佬为了彰显自己的数学天赋而自己…

C++类基础7——移动构造函数,移动赋值运算符

右值引用只不过是一种新的C语法,真正理解起来有难度的是基于右值引用引申出的2种C编程技巧,分别为移动语义和完美转发。 左值、右值、将亡值: 概念: 从以下几个概念逐步深入: 表达式: 要说清“三值”&…

树莓派串口读取陀螺仪ky9250(mpu9250)数据

9轴姿态角度传感器,其中ky9250陀螺仪由于自带卡尔曼动态滤波算法方便用户使用。ky9250陀螺仪基本可以在各个平台上进行数据的读取(如stm32\arduino\C#\Matlab\树莓\Unity3d\python\ROS\英飞凌\Nvidia jetson linux 等) 1、树莓派和ky9250的接…

[报错解决]Type com.baomidou.mybatisplus.extension.ddl.IDdl not present

springboot整合mybatis-plus关键报错信息 在处理mybatis-plus时遇到的问题,现提供解决方案供参考: org.springframework.beans.factory.BeanCreationException: Error creating bean with name com.baomidou.mybatisplus.autoconfigure.MybatisPlusAu…

C++_第五周做题总结_类与对象

id:27 A.对象数组(类和对象) 题目描述 课堂上我们谈到类这个概念,比如第一题我们有学生类这个抽象的概念,成千上万个学生都具有同样的属性,但针对某个具体学生来说,他/她具有自己的鲜明个性,比…

AcWing刷题-区间合并

校门外的树 区间合并: from typing import List def merge(intervals: List[List[int]]) -> List[List[int]]:# 按照第一个元素从小到大进行排序intervals.sort(keylambda x: x[0])# 初始化一个新的数组new_list list()for i in intervals:# 把第一个数组元素添…

基于ssm旅游资源网站(java项目+文档+源码)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于ssm的旅游资源网站。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 旅游资源网站的主要使用者分为管理…

描述C语言中的进程和线程之间的区别

描述C语言中的进程和线程之间的区别 在C语言中,进程和线程是两个非常重要的概念,它们在操作系统中各自扮演着独特的角色。理解它们之间的区别对于编写高效、可维护的并发程序至关重要。下面将详细阐述进程和线程在C语言中的区别。 首先,我们…

机器学习每周挑战——旅游景点数据分析

数据的截图,数据的说明: # 字段 数据类型 # 城市 string # 名称 string # 星级 string # 评分 float # 价格 float # 销量 int # 省/市/区 string # 坐标 string # 简介 string # 是否免费 bool # 具体地址 string拿到数据…

【42 可视化大屏 | 某瓣电影Top250数据分析可视化大屏】

文章目录 🏳️‍🌈 1 普版大屏🏳️‍🌈2 Flask版大屏🏳️‍🌈3 FlaskMysql版大屏🏳️‍🌈 4. 可视化项目源码数据 大家好,我是 👉【Python当打之年(点击跳转)…

渐变色x轴换行柱状图

// 系统上云率const optionBar {title: {text: 系统上云率,left: left,textStyle: {color: "#fff",fontSize: 14,fontWeight: 650,align: "center",},},color: [#32C5FF, #00F766, #EECB5F],grid: {top: 40,bottom: 0,},legend: { // 控制图例组件show: …

数据结构·二叉树(2)

目录 1 堆的概念 2 堆的实现 2.1 堆的初始化和销毁 2.2 获取堆顶数据和堆的判空 2.3 堆的向上调整算法 2.4 堆的向下调整算法 2.4 堆的插入 2.5 删除堆顶数据 2.6 建堆 3 建堆的时间复杂度 3.1 向上建堆的时间复杂度 3.2向下建堆的时间复杂度 4 堆的排序 前言&…

【第十二届“泰迪杯”数据挖掘挑战赛】【2024泰迪杯】B题基于多模态特征融合的图像文本检索—解题全流程(论文更新)

【第十二届“泰迪杯”数据挖掘挑战赛】【2024泰迪杯】B题基于多模态特征融合的图像文本检索更新(论文更新) ​ 本节主要更新了论文、训练日志的log数据提取(Loss、ACC、RK)等数据可视化作图的代码 B题交流QQ群: 4583…

《乱弹篇(26)更好的自己》

俄乌、以巴、中东,烽火连天,持久酣战,搅得地球村住民不得安宁。虽说孰是孰非自有公论,但时评文难写也是评论界的普遍认知,所以今天笔者自觉地绕开时政话题,尽本“人民体验官”义务,推广人民日报…

【BY组态】轻量化web组态编辑器插件

演示地址:http://www.byzt.nethttp://www.byzt.net BY组态是一款非常优秀的纯前端的轻量化【web组态插件工具】,大小只有2M,可无缝嵌入到vue项目,react项目等,由于是原生js开发,对于前端的集成没有框架的限…

计算机网络-TCP/IP 网络模型

TCP/IP网络模型各层的详细描述: 应用层:应用层为应用程序提供数据传输的服务,负责各种不同应用之间的协议。主要协议包括: HTTP:超文本传输协议,用于从web服务器传输超文本到本地浏览器的传送协议。FTP&…

通信专业毕业设计(论文)-基于城区网络移动通信无线网络优化的研究

下载请点击↓: 通信专业毕业设计(论文)-基于城区网络移动通信无线网络优化的研究资源-CSDN文库 基于城区网络移动通信无线网络优化的研究 学生姓名 专业班级 学 号 摘要 所谓网络优化。指的是采集和分析运行中的移动网络信息,并对 找出影响…