笔记
Tom哈哈
这个作者很懒,什么都没留下…
展开
-
OpenCV 4.x交叉编译
编译0、下载代码:git clone -b 4.5.5 https://github.com/opencv/opencv.git 1、配置编译工具链,新建文件ax620a.toolchain.cmake,其内容如下:set(CMAKE_SYSTEM_NAME Linux)set(CMAKE_SYSTEM_PROCESSOR arm)set(CMAKE_C_COMPILER "arm-linux-gnueabihf-gcc")set(CMAKE_CXX_COMPILER "arm-linux原创 2022-05-23 12:46:57 · 1012 阅读 · 1 评论 -
安防摄像头移动侦测和遮挡侦测基本原理
移动侦测算法流程:将目标区域划分为指定大小的格子(如32x32像素),计算每个格子YYY的均值Y‾\overline YY前后帧对应格子Y‾\overline YY的差值的绝对值记为∣Ydiff∣\vert Y_{diff} \vert∣Ydiff∣,若∣Ydiff∣\vert Y_{diff} \vert∣Ydiff∣大于指定的阈值TyT_yTy则记为1,否则记为0统计最后1的个数是否大于指定阈值TconfidenceT_{confidence}Tconfidence,若大于则发生移动,原创 2022-05-19 16:17:54 · 2812 阅读 · 1 评论 -
Linux常用命令笔记
Linux环境下常用命令原创 2021-10-16 12:20:27 · 87 阅读 · 0 评论 -
Pytorch计算数据集均值和标准差
代码来源Pytorch Quick Tip: Calculate Mean and Standard Deviation of Dataimport torchimport torch.utils.data.dataloader as dataloaderimport torchvision.datasets as datasetsfrom torchvision import transformstrain_dataset = datasets.CIFAR10(root="dataset/",原创 2021-03-30 10:00:08 · 1791 阅读 · 0 评论 -
不定长度验证码识别Pytorch版
模型结构采用CNN+RNN(CRNN)+CTCnotebook地址!pip install matplotlibimport torch.utils.data.dataloader as dataloaderimport torch.utils.data.dataset as datasetfrom torchvision import datasets, transformsimport torch.nn.functional as Fimport torchimport globim原创 2021-03-20 13:32:30 · 1737 阅读 · 5 评论 -
固定长度验证码识别TensorFlow版
识别固定长度的二维码 notebook!pip install captchaRequirement already satisfied: captcha in /usr/local/lib/python3.7/dist-packages (0.3)Requirement already satisfied: Pillow in /usr/local/lib/python3.7/dist-packages (from captcha) (7.0.0)from captcha.image impo原创 2021-03-20 12:20:48 · 295 阅读 · 0 评论 -
cuda 11.2环境下TensorFlow 2.4.1出现libcusolver.so.10 not found问题记录
环境:RTX3090cuda11.2tensorflow 2.4.1测试TensorFlow使用是否能够使用GPUimport tensorflow as tftf.config.list_physical_devices('GPU')出现libcusolver.so.10 not found在tensorflow 的issues#43947发现解决方案,降低cuda版本到cuda11.0,现记录操作流程:1、卸载cuda11.2,在目录/usr/local/cuda-11.2/b原创 2021-03-12 10:34:33 · 833 阅读 · 0 评论 -
windows python 3.6升级pip失败问题 ValueError: Unable to find resource t64.exe in package pip._vendor.distl
环境:windows10python3.6报错日志:Python36\site-packages\pip\_vendor\distlib\scripts.py", line 383, in _get_launcher raise ValueError(msg)ValueError: Unable to find resource t64.exe in package pip._vendor.distlib解决方法:1、卸载pip setuptoolspython -m pip un原创 2021-02-17 17:35:43 · 248 阅读 · 0 评论 -
Flowable 相关问题
环境:flowable-6.6.0问题一:用户密码数据库明文存储在flowable-default.properties配置文件中添加如下配置:flowable.idm.password-encoder=spring_bcrypt问题二:显示流程图中文乱码在flowable-default.properties配置文件中添加如下配置:flowable.activity-font-name=Defaultflowable.label-font-name=Defaultflowable.ann原创 2021-02-02 13:52:58 · 323 阅读 · 0 评论 -
极客时间-实用密码学-10怎么防止数据重放攻击
为什么还要学习 CBC 模式?不知道你是不是已经有了一个问题:既然 CBC 要退出历史舞台了,我们还学习它干什么呢?第一个原因,CBC 的退出进程可能需要十数年才能完成。你现在工作的项目种,可能还存在 CBC 模式的大量使用。我们学习了 CBC 模式,有助于你解决现存项目的安全问题。第二个原因,学习针对 CBC 的攻击方案, 是我们深入理解加密算法安全问题的最好的切入点。了解这些安全缺陷和攻击方案,有助于你更好地使用密码学的算法。因为,这些缺陷也可能换个面孔,出现在应用程序层面。如果你能够说清楚 CB原创 2020-12-16 09:48:33 · 3750 阅读 · 1 评论 -
极客时间-实用密码学-09为什么ECB模式不安全
链接模式怎么连?链接模式指的是如何把上一个分组运算和下一个分组运算联系起来,使得上一个分组运算可以影响下一个运算。但是,这个联系是怎么建立起来的,上一个运算到底又是怎么影响下一个运算的,这个描述是模糊的。从道理上来说,上一个分组运算的所有要素,都有可能参与到下一个分组运算里;下一个分组运算的每一个要素,都有可能接收上一个运算的一个要素或者几个要素的组合。而在这之间就会形成不同的分配组合,也就形成了不同的链接模式。ECB模式ECB模式不使用链接模式,也就不需要初始化向量。每一个分组的加密都是独立原创 2020-12-16 09:22:37 · 5904 阅读 · 0 评论 -
极客时间-实用密码学-08该怎么选择初始化向量
分组算法计算流程分组算法要对输入数据进行分组,然后按数据分组进行运算。一个典型的分组算法由三部分组成:数据分组、分组运算、链接模式。数据分组:数据分组在加密时会将明文数据分组为加密算法能够处理的固定大小的数据块。比如AES能够处理的数据块大小为128位,那么数据就要被分割成一个或多个128为的数据块。如果不能整分,就要把最后一个分组补齐为128位。这些分组数据的运算结果,组合起来就是密文数据。解密时进行相反的操作将补齐数据去掉,再把数据分组组合成完整的明文数据。理解了数据分组再来看一下分组运原创 2020-12-14 09:13:03 · 3034 阅读 · 0 评论 -
极客时间-实用密码学-07怎样选择对称密钥算法
对称加密性能影响有多大在下面的表格里,我给你总结了常见的一些算法,以及一些相关的信息。其中,计算性能参考的是 ECRYPT 性能基准测试在 2020 年 7 月对较长数据的运行结果。从上表中可以看出每个字节的加密、解密运算大约需要0.5个时钟周期,对比单向散列函数的性能,加密解密运算是一种很快的运算。序列算法和分组算法为了能够处理任意大小的数据并且输出结果长度固定,单向散列函数需要将数据分组,然后对数组进行运算。在对称加密算法里对输出数据没有长度限制,对数据的处理方式也就有更多的想象空间。如原创 2020-12-07 09:45:32 · 2685 阅读 · 0 评论 -
极客时间-实用密码学-5如何有效避免长度延展攻击
什么是长度延展攻击假设我们有两段数据S和M以及单向散列函数h,其中S是机密信息。我们通过hash=h(S+M)(其中+,表示字符串连接)计算hash值,通过计数数据的hash与原始hash对比来校验数据是否可靠。因为通常攻击者不知道S值。比如如下字符串(可以看作url的一部分):key_id=44fefa051fc1c61f5e76f27e620f51d5&perms=read&hash_sig=38d39516d896f879d403bd327a932d9ehash_si=h(原创 2020-12-02 16:40:07 · 2869 阅读 · 1 评论 -
极客时间-实用密码学-3如何设置合适的安全强度
有多难现代单向散列函数在算法意义上的破解,都是通过找到一对散列值相同的数据形式发布的什么是安全强度N位的安全强度表示破解一个算法需要2的N次方的运算组合的强度由最弱的算法和密钥决定安全强度会变吗算法的安全强度不是一成不变的,随着安全分析的进步,几乎所有的密码学算法的安全强度都会减弱。例如:MD5、SHA-1都不在安全,MD5安全强度最多 18 位,SHA-1 的攻击复杂度是 63.4 位,攻击成本大约为 4.5 万美元。一个 64 位安全强度的密码算法,它现在的破解成本大概是 5 万美元左右原创 2020-11-27 11:31:01 · 3735 阅读 · 1 评论 -
极客时间-实用密码学-2单向散列函数
单向函数正向计算容易,反向计算困难的函数散列函数任意长度的数据都能映射到固定长度数据的函数单向散列函数既是单向函数又是散列函数,满足:逆向运算困难构造碰撞困难雪崩效应输入数据的微小变化就会造成出输出数据的巨大变化严格的定义:输入数据的一位反转,输出数据的每一位都有50%的概率发生变化怎么解决数据完整性问题通过对应的散列函数计算数据的散列值与原散列值对比,相同表示数据未发生变化,否则数据已发生过修改...原创 2020-11-25 09:12:34 · 2676 阅读 · 0 评论