mahuatengmmp
码龄7年
关注
提问 私信
  • 博客:93,236
    93,236
    总访问量
  • 50
    原创
  • 1,705,894
    排名
  • 130
    粉丝
  • 3
    铁粉

个人简介:本账号已不再使用,所以发私信和评论是没用的

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:福建省
  • 加入CSDN时间: 2018-02-17
博客简介:

mahuateng的博客

查看详细资料
个人成就
  • 获得160次点赞
  • 内容获得73次评论
  • 获得730次收藏
  • 代码片获得4,568次分享
创作历程
  • 34篇
    2021年
  • 10篇
    2020年
  • 6篇
    2019年
成就勋章
TA的专栏
  • pyqt5
    34篇
  • 语义分割
    1篇
  • 节点编辑器
    32篇
  • 爬虫
    7篇
  • 哼哼啊啊啊啊啊
    1篇
  • 学业学习
    1篇
  • RNN
    3篇
  • pytorch
    1篇
  • DQN
    2篇
兴趣领域 设置
  • 人工智能
    pytorch
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

175人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

两种特征图self-Attention-block上算法差异的个人见解

本篇纯个人见解,如有错误请指出文章素材及资料来源【极市】李夏-语义分割中的自注意力机制和低秩重建[https://www.bilibili.com/video/BV11E411y7Dr]流程图左为NonLocal,右为A^2,其中N代表特征图中的像素数目,C代表channel数,HW为高宽,我们都知道C的数量一定是远小于N的数量的,K代表种类由于矩阵的乘法结合律,这两种算法计算出来的信息是差不多的对比两个都计算复杂度,左边的复杂度相当于是NNC,右边为NCCNonLocalQ与K叉乘对
原创
发布博客 2021.09.08 ·
730 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[Pyqt-Node-Editor]Nodeeditor文档--Coding Standards(编码标准)

Coding Standards在整个 nodeeditor 包中使用以下规则和指南:File naming guidelines(文件命名指南)nodeeditor 包中的文件以 node_ 开头包含图形表示(PyQt5 覆盖类)的文件以 node_graphics_ 开头窗口/小部件的文件以 node_editor_ 开头Coding guidelines(编码指南)方法使用驼峰命名法变量/属性使用 Snake 大小写命名构造函数__init__始终包含整个类的所有类变量。这对新
原创
发布博客 2021.08.23 ·
816 阅读 ·
2 点赞 ·
0 评论 ·
1 收藏

[Pyqt-Node-Editor]Nodeeditor文档--Evaluation(评估)

EvaluationTL;DR: 评估系统使用 eval()和 evalChildren()。eval()方法应该被您自己的实现覆盖。评价逻辑使用标志用于标记所述节点是脏和/或无效的。Evaluation Functions有两种主要的评估方法:eval()evalChildren()这些功能是相互排斥的。这意味着,evalChildren确实不eval当前节点,但只有当前的孩子节点。默认情况下, 的实现eval()是“空”并返回 0。然而,这似乎是合乎逻辑的,该 eval(如果成功)将N
原创
发布博客 2021.08.23 ·
465 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

[Pyqt-Node-Editor]Nodeeditor文档--Serialization(序列化)

Serialization所有可序列化的类都派生自Serializable类。 Serializable确实为我们的类创建了常用的参数。在我们的例子中,它只是id 属性。Serializable定义了两个应该在子类中重写的方法:serialize()deserialize()根据编码标准,我们将这两个函数放在类源代码的底部。为了包含我们使用的所有数据,我们需要使用 OrderedDict 来替代传统python词典. 主要是因为我们要保留文件中序列化参数的顺序。派生的子类Serializa
原创
发布博客 2021.08.23 ·
345 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

[Pyqt-Node-Editor]Nodeeditor文档--Event system(事件系统)

Event systemNodeeditor 使用自己的事件(并尽量避免使用pyqtSignal)来处理场景内发生的逻辑。如果一个类确实处理了一些事件,它们通常会在本文档的页面顶部进行描述。任何事件都可以订阅,注册回调的方法可以被调用:add<EventName>Listener(callback)具体可以看下源代码您可以随时注册这些活动中的任何一个。Events used in NodeEditor:SceneHas Been Modified当Scene中发生改变时It
原创
发布博客 2021.08.23 ·
378 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[Pyqt-Node-Editor]Nodeeditor文档--node_node

Node_node模块包含用于表示Node 的NodeEditor 类的模块。class nodeeditor.node_node.Node(scene: Scene, title: str = 'Undefined Node', inputs: list = [], outputs: list = [])Bases: nodeeditor.node_serializable.SerializableClass representing Node in the Scene.Parameters(
原创
发布博客 2021.08.23 ·
868 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

pyqt-node-editor-master.zip

发布资源 2021.08.15 ·
zip

[PyQt5-Node-Editor]如何获取节点编辑器代码,以及帮助文档

介绍如何获取节点编辑器链接Tutorial Series WebGitLab repositoryDocumentationFAQ为原作者捐赠Discord获取文档他的文档不全(也没有更新),需要自己git他的仓库,然后对doc里的build.py运行,进行文档编译成HTML这样文档才是全的先需要安装:pip install sphinx sphinx_intl sphinx_rtd_theme recommonmark之后在这个目录下运行build.py即可得到文件bu
原创
发布博客 2021.08.03 ·
515 阅读 ·
7 点赞 ·
0 评论 ·
2 收藏

pyqt-node-editor官方文档编译

发布资源 2021.08.03 ·
zip

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(25)——标题显示文件修改状态

1
原创
发布博客 2021.08.02 ·
880 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(24)——修BUG

BUG导航修复各种BUGEdge在多次复制后可能出现消失的显示BUG切割线崩溃BUG当连线连接自己时会崩溃修复各种BUGEdge在多次复制后可能出现消失的显示BUG在缩小放大后Edge又能正常显示需要在node_graphics_edge.py里添加如下代码,让edge能够一直刷新(可能) def boundingRect(self): return self.shape().boundingRect() def shape(self): re
原创
发布博客 2021.07.25 ·
378 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(23)——实现剪贴板功能

目标实现剪贴板功能实现剪贴板完整代码from collections import OrderedDictfrom node_graphics_edge import QDMGraphicsEdgefrom node_node import Nodefrom node_edge import Edge, EDGE_TYPE_BEZIERDEBUG = Falseclass SceneClipboard(): def __init__(self,scene):
原创
发布博客 2021.07.25 ·
373 阅读 ·
2 点赞 ·
3 评论 ·
5 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(22)——如何实现剪贴板操作

导航目标实现该复制什么如何复制序列化内容建立新类,实现剪贴板功能Edit内添加剪贴板功能目标设置复制粘贴剪切的选项复制Node,edge等内容粘贴到Scene中实现该复制什么如果我们要对node和edge进行复制,那么我们需要复制的是什么东西是复制对象吗,当然不是在前面的内容就以及给了答案,我们将scene里的内容进行了序列化保存,以及反序列化解压读取那么,答案就显然易见了,我们需要复制的是序列化内容如何复制序列化内容 def deserialize(self, data,
原创
发布博客 2021.07.25 ·
334 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(21)——实现主窗口

导航目标实现将之前的NodeEditWind改为NodeEditWidget主界面代码详解建立一个菜单栏功能范本将View的按键功能移植到主界面事实坐标显示目标本章节里将真正的重点实现主界面的建立,以及功能的实现,将之前View上的按键功能移至主界面在主界面中心放置View,下面添加statusBar,上面添加菜单栏,并且statusBar将实现当前鼠标在场景的位置显示,以及保存成功等消息的显示实现将之前的NodeEditWind改为NodeEditWidgetNodeEditWind将不再担
原创
发布博客 2021.07.25 ·
1114 阅读 ·
1 点赞 ·
2 评论 ·
3 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(20)——撤销与重做(三)历史戳

目标本章将实现以下功能当鼠标选中Node或者Edge时,将记录历史当Edge或者Node被删除时,记录历史当Node被移动的时候,记录历史crlt + z为undoshift + crlt + z为redo实现本章主角–历史戳的建立为了实现能够保存历史,redo,undo,就必须建立一个东西来负责储存历史,redo和undo去读取已经存储的历史,即我们需要建立一个历史戳也就是createHistoryStamp负责处理并返回的东西def createHistoryStamp(se
原创
发布博客 2021.07.24 ·
492 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(19)——撤销与重做(二)历史堆栈

DEBUG = Trueclass SceneHistory(): def __init__(self,scene): self.scene = scene self.history_stack = [] self.history_current_step = -1 self.history_limit = 8 def undo(self): if DEBUG: print('un
原创
发布博客 2021.07.23 ·
413 阅读 ·
1 点赞 ·
2 评论 ·
0 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(18)——撤销与重做(一)介绍

如何做我想用一张图来简单明了的说明首先建立一条历史堆栈,最大长度为8(0-7)每次操作都会储存到历史堆栈里面,想要找到对应的历史,可以通过指针p来寻址,找到对应历史undo会使指针位置往回偏移,在p>=0的条件下redo会使指针向前偏移,在当前指针位置小于历史堆栈总长的条件下...
原创
发布博客 2021.07.18 ·
448 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(17)——解码,读取Scene

def deserialize(self, data, hashmap={}): print('解码数据', data) self.clear() hashmap = {} #创建nodes for node_data in data['nodes']: Node(self).deserialize(node_data, hashmap) #创建edges ...
原创
发布博客 2021.07.18 ·
572 阅读 ·
2 点赞 ·
1 评论 ·
3 收藏

[PyQt5-Node-Editor][进阶篇]使用Pyqt5制作节点编辑器(16)——序列化,保存Scene

目标能够将scene数据保存为一个JSON文件,方便读取和保存{ "id": 2586028185080, "scene_width": 64000, "scene_height": 64000, "node": [ { "id": 2586029654760, "title": "这是一个节点", "pos_x": -350.0, "pos_y": -250.
原创
发布博客 2021.07.18 ·
716 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

[PyQt5-Node-Editor][基础篇](完)从零开始使用Pyqt5制作节点编辑器(15)——切割线

导航目标实现按下鼠标左键绘制切割线鼠标移动切除方法目标按住鼠标左键和crtl键进入切割模式,edge在被切割的路径上就会被切除实现定义一个新模式,切割模式MODE_EDGE_CUT = 3按下鼠标左键由于需要按下鼠标左键和crtl,那么这个这个模式肯定是在view里的leftMouseButtonPress(self, event)里判断并执行则在leftMouseButtonPress(self, event)新增代码if item is None: if event.mod
原创
发布博客 2021.07.15 ·
982 阅读 ·
0 点赞 ·
6 评论 ·
6 收藏
加载更多