- 博客(172)
- 收藏
- 关注
原创 Linux进程间通信
有名管道(FIFO)FIFO和Pipe一样,提供了双向进程间通信渠道。但要注意的是,无论是有名管道还是匿名管道,同一条管道只应用于单向通信,否则可能出现通信混乱(进程读到自己发的数据)。/*** @brief 用于创建有名管道。该函数可以创建一个路径为pathname的FIFO专用文件,mode指定了FIFO的权限,FIFO的权限和它绑定的文件是一致的。FIFO和pipe唯一的区别在于创建方式的差异。一旦创建了FIFO专用文件,任何进程都可以像操作文件一样打开FIFO,执行读写操作。
2025-11-03 09:43:59
265
原创 Linux进程处理
进程(Process)是正在运行的程序,是操作系统进行资源分配和调度的基本单位。程序是存储在硬盘或内存的一段二进制序列,是静态的,而进程是动态的。进程包括代码、数据以及分配给它的其他系统资源(如文件描述符、网络连接等)。
2025-10-27 15:57:47
716
原创 Qt中文字体编码格式问题
内部采用 Unicode 编码(UTF-16),而实际开发中常需要处理基于本地系统编码的字节数据(如从本地文件读取的文本、与系统 API 交互返回的字符串等)。就是专门用于将这类 “本地 8 位编码” 的字节数组(对于出现的中文格式可以将中文转为string类型。运行时出现上边这个问题,编码格式为GBK。
2025-10-23 09:32:16
310
原创 MySQL基础篇
区别于开关autocommmit,在执行语句前,先执行start transaction, 要是执行正确,需要commit,数据才会更改,否则回滚,数据不会改变。0表示是手动提交,开启手动提交后,每次执行完语句,要是执行正确,需要commit,数据才会更改,否则回滚,数据不会改变。all、any、some(any,some效果一样)因为返回的id是一列,所以是列子查询。相当于把a直接插入到了>后的()里。
2025-07-23 17:28:47
223
原创 HCMA-UNet: A Hybrid CNN-Mamba UNet withAxial Self-Attention for Efficient Breast CancerSegmentatio
动态对比增强磁共振成像(DCE-MRI)中乳腺癌病灶分割由于而颇具挑战性。为解决这些难题,本研究提出了一种新型混合分割网络 HCMA-UNet 用于乳腺癌病灶分割。我们的网络由轻量级卷积神经网络(CNN)骨干和多视图轴向自注意力 Mamba(MISM)模块组成。MISM 模块融合了视觉状态空间块(VSSB)和轴向自注意力(ASA)机制,通过非对称分裂通道(ASC)策略有效减少参数,实现高效的三向特征提取。我们的轻量级模型仅含 287 万个参数和 126.44 亿次浮点运算,性能卓越。
2025-07-15 15:22:52
1011
原创 Local Masked Reconstruction for Efficient Self-Supervised Learning on High-resolution Images(论文笔记)
生成式自监督视觉学习方法(如 MAE、BEiT)通过掩码重建学习视觉表示,但全局重建机制导致,尤其在上。例如,MAE-Huge 在 224×224 ImageNet pretraining 需 34.5 小时(128 TPU-v3),384×384 时计算量达 224×224 的 4.7 倍。Transformer 自注意力计算复杂度为 O (n²),n 为patch数量,高分辨率时 n 显著增加,制约大规模数据集训练。
2025-07-10 10:13:05
686
1
原创 OpenCv基础(C++)
这种初始化通常用于:创建空白图像,初始化临时处理矩阵,准备存储三通道数据(如彩色图像)1,2,3可以看作是一个像素点。
2025-07-01 16:18:51
668
原创 halcon学习
1.读取单个图像ctrl+R 快捷键,可以选择路径和修改变量名2.读取多张图像,选择图像存储的文件夹3.获取实时图像和步骤2一样操作,但资源选择图像获取接口。
2025-07-01 14:48:38
465
原创 visual studio配置opencv
8.在电脑设置->高级系统设置->环境变量->系统变量的path->添加D:\opencv\opencv\build\x64\vc16\bin。4.右键propertysheet,点击属性,接着配置包含目录。2.选中release|x64 添加新项目属性表。3.PropertySheet为新创建的属性表。重启编译器,运行代码此时看见出现图片说明配置成功。debug版本选择有后边有d的版本。7.尝试在编辑器中生成代码。
2025-06-19 11:22:09
452
原创 Qt学习3
添加新文件 - Qt – 设计师界面类 (.h .cpp .ui).ui中 设计 QSpinBox和QSlider 两个控件Widget中使用自定义控件,拖拽一个Widget,点击提升为,点击添加,点击提升实现功能,改变数字,滑动条跟着移动 ,信号槽监听。提供 getNum 和 setNum对外接口//QSpinBox移动 QSplider跟着移动,因为这个方法是valueChanged重载的,所以需要定义函数指针//函数指针。
2025-06-05 10:01:22
972
原创 Qt学习2
1.项目文件名右击,添加新文件,Qt->Qt resouce file,文件名 res。,添加前缀“/”,添加文件,添加文件后,点左下角构建。静态成员函数(static public func)QListWidget 列表容器。QTreeWidget 树控件。QTableWidget控件。
2025-06-03 16:41:53
993
原创 Qt学习1
/teacher.h中的teacher类中signals://自定义信号 写道signals下//返回值是void,只需要声明,不需要实现//可以有参数,可以重载//重载的函数//student.h中的student类中//早期QT版本 必须要写到public slots下,高级版本可以写到public或全局下//返回值void,需要声明,也需要实现//可以有参数,可以发生重载//重载的函数//调用重载的函数时//连接带参数的信号和槽 出现了重载//指针 -> 地址。
2025-05-26 21:05:45
372
原创 深度学习历程
在卷积神经网络(CNN)中,卷积块是一组组合在一起的卷积层、激活函数和其他操作(如归一化层)的集合。将多个操作组合成一个块的目的是为了实现特定的功能或特征提取模式,并且可以方便地在网络中重复使用。下采样层:减少空间信息,从而降低运算时间(maxpooling最大池化层:假设是2x2的,就是在2x2的4个单元格中去一个最大的)表示每个阶段输出的特征图的通道数分别为 192、384、768 和 1536。表示模型有 4 个阶段,每个阶段的卷积块数量分别为 3、3、27 和 3。Lab 颜色空间简介。
2025-03-10 14:46:47
981
原创 指针基础入门
if(p1==p3)表示的是p1的地址是否与p3的地址相同,虽然p1,p3中存储的都是n的地址,但是他们本身的地址是不同的(相当于p1是第一层的房子,p3是第三层的房子,虽然这两个房子里的东西是一样的,但是他们的地址不一样)而 &k 是取变量 k (前提是 k 是一个 int 类型的变量)的地址操作符。这条语句的作用是把变量 k 的地址赋值给指针变量 p ,也就是让指针 p 指向变量 k。p1中存储的是n的地址,p2中存储的是m的地址,p3中存储的也是n的地址。
2025-03-09 10:45:32
290
原创 单目运算符和三目运算符的自右向左结合
三目运算符“?: ”的结合方向是自右向左,意味着当一个表达式中存在多个三目运算符嵌套时,会从最右边的三目运算符开始计算,逐步向左。例如:int a = 1;int b = 2;int c = 3;// 按照自右向左的结合性,先计算右边的三目运算符// 即先判断b < c,条件为真,返回b的值2// 再将返回值2作为左边三目运算符的条件判断结果// 由于2为非零值,即真,所以整个表达式返回a的值1a : b < c?b : c;return 0;
2025-03-08 11:05:50
411
原创 一些c语言的小知识
1.C语言的每条可执行语句最终都将被转换成二进制的机器指令。2.结构化程序设计由3种基本结构组成,3种基本结构组成的算法可以完成任何复杂的任务。3.用C语言实现的算法可以没有输入但必须有输出操作。4.格式化输入函数scanf的返回值是输入的数据的个数。5.x=1,y=2;从右往左计算,最终打印的是x+y的值6.- scanf("a=%d,b=%d",&a,&b) 中,格式控制字符串 "a=%d,b=%d" 规定了输入的格式。正确的输入是a=25,b=25结果为256 400。
2025-03-07 16:52:34
1058
原创 复试C语言
1.C语言的标识符是怎样组成的?合法的标识符必须由英文字母或下划线开头,是字母、数字河下划线的序列,不能跨行书写,自定义的标识符不能与关键字同名。2.构成c语言源程序的基本单位是(函数)3.在c程序中,main函数的位置(可以任意)4.一个c程序执行是从(main函数开始,直到main函数结束)5.c语言的源程序通常以(.c)作为其拓展名int main()int x;//没有类似的二进制输出样式//8进制//16进制return 0;
2025-03-01 10:03:15
850
原创 一些求最大公约数自己的想法(辗转相除法)
1.8%3=2(说明3一定不是8,3的最大公约数,因为不能由若干个3这个零件去构成8,且一定不存在比3大的零件,同时去构成8这个物体和3这个物体,所以去找小于3的。此时往上递归,可以说明2,3可由若干个1这个零件构成,再往上递归,可以说明8,3可由若干个1这个零件构成)可以把最大公约数看为零件,若干个零件可以组成m这个物体或n这个物体(前提是这个零件一定是最大体积可以构成m,n的)因为要是可以找到3,2的最大公约数,那么这个最大公约数就也是8的最大公约数,因为8是由两个3和一个2组成。为什么此时要3%2?
2025-02-27 18:02:40
277
原创 一些word文档技巧
8. 在弹出的“替换字体”对话框中,将字体设置为“Times New Roman”,然后点击“确定”。通过以上步骤,文档中所有的“LSTM”将被替换为Times New Roman字体的“LSTM”。2. 按下快捷键 `Ctrl + H` 以打开“查找和替换”对话框。9. 回到“查找和替换”对话框,点击“全部替换”。5. 在“替换为”框中再次输入“LSTM”。7. 点击“格式”按钮,然后选择“字体…3. 在“查找内容”框中输入“LSTM”。6. 点击“更多”按钮,以显示更多选项。4. 点击“替换”标签。
2024-05-30 21:30:03
404
原创 火柴排队(映射排序)
我的想法是:可以快速找到a中第小的数,b中第1小的数,每次可以同时操作,a中第小的数和b中第1小的数,并把它们关系表示出来。比如:下边的例子,可以直接找到a,b中第1,2,3,4小的值,并把它们映射c[2]=2,c[1]=0,c[0]=3,c[3]=1)表示a中第1小的数,在a数组中的第2个位置,b中第1小的数,在b数组中的第2个位置,表示a中第2小的数,在a数组中的第1个位置,b中第2小的数,在b数组中的第0个位置,实现上述想法,需要离散化,即用a的相对位置(a序列不变)去给b排序。
2024-04-10 20:45:51
367
1
原创 AtCoder Beginner Contest 337
每两个数都连着一条边,存入字典,依次输出,用前一个数来确定后一个数是什么。统计每一行每一列的前缀和,依次枚举长度为k的数组,且该数组里边没有x。分别给ABC赋值,有小的出现在大的后边就不符合题意。A B C必须都连着放,且必须按照ABC的顺序。建一个横纵坐标都从1开始的二维数组。
2024-01-25 20:03:26
504
原创 Codeforces Round 920 (Div. 3)
如果可以交换,那么两两交换每次可以改变两个位置,一定比操作一次,只改变一个位置好。找出所有cnt_1=1需要换成0,cnt_0=0需要换成1的个数。对于两个排序好的序列,两个序列中最大的差值一定是取双方序列的两端。排序之后,贪心的每次选a最小和b最大,或者a最大或者b最小。即a最小和b最大,或者a最大或者b。不能交换时,再进行添加和删除。
2024-01-18 13:17:23
435
原创 Python语法基础
2、ord()函数是chr()函数(对于8位的ASCII字符串)的配对函数,它以一个字符串(Unicode字符)作为参数,()用一个范围在range(256)内的(就是0~255)整数作参数,2.如果需要更大的需求可以用decimal。
2024-01-14 10:13:07
549
原创 火柴排队.
所以我们可以存一下a,b序列的下标和数值,进行一下按值排序,就可以得到a,b的相对位置,此时可以增加一个数组c,c的下标存a数组的下标,c数组的值存b数组的下标,因为c数组下标是有序的,那么我们只要想到怎么使c数组的数值排序,使得数值也变成有序的就可以得到答案。那么,可以求 a相对于b,把a排成和b大小关系一一对应的序列,即a序列的第一小和b序列的第一小在同一位置上,这样的交换次数是最少的。分析:使得(ai-bi)^2的和最小,即a^2-2ab+b^2的和最小,那么使得2ab最大,就可以使得整体最小。
2023-10-28 11:06:23
380
原创 轻拍牛头(约数)
分析:暴力写需要n^2的时间复杂度,此时想一下预处理每个数的倍数,约数和倍数是有关系的,把每个数的倍数都加上1.题意:求ai在n个数中,ai可以整除的数有多少个,不包括ai自己。
2023-08-15 10:42:12
223
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅