随笔分类 -  03.program

编程语言、开发工具、项目经验总结等.
摘要:首先在程序中封装了下面一个函数用来执行系统命令: // 执行系统命令 func executeCommand(command string, output, outerr io.Writer) error { cmd := exec.Command("/bin/bash", "-c", comman 阅读全文
posted @ 2023-12-21 21:36 小得盈满 阅读(314) 评论(0) 推荐(0) 编辑
摘要:这一次编译 OpenCV 的 Python 依赖为了方便运行我们使用 Docker 进行编译,环境准备如下: 系统依赖:Ubuntu 18.04 Python 版本:3.6,Ubuntu 18.04 官方源安装的默认版本 OpenCV 版本:3.4.16,是目前 3.x 的最新版 CMake 版本: 阅读全文
posted @ 2023-09-21 22:10 小得盈满 阅读(203) 评论(0) 推荐(0) 编辑
摘要:Faiss 是 Facebook 开源的一套高效相似性搜索以及向量聚类的开发库,支持各类相似性搜索的算法,Faiss 项目本身是使用 C++ 编写的,但是提供 Python 的绑定,可以直接使用 numpy 类型操作,同时也支持使用 GPU 加速计算,下面介绍下 Faiss 的源码编译过程。 如果想 阅读全文
posted @ 2023-02-23 11:30 小得盈满 阅读(3149) 评论(0) 推荐(0) 编辑
摘要:我们在编写C代码时,会使用两种类型的内存,一种是栈内存,另外一种是堆内存,其中栈内存的申请和释放是由编译器来隐式管理的,我们也称为自动内存,这种变量是最简单而且最常用的,然后就是堆内存,堆的申请和释放都由程序员显式完成,因此使用起来也必须小心谨慎,以避免缺陷。 在C语言中通常是使用malloc/fr 阅读全文
posted @ 2022-04-15 23:14 小得盈满 阅读(359) 评论(0) 推荐(0) 编辑
摘要:Golang中的map底层使用的数据结构是hash table,基本原理就和基础的散列表一致,重点是Golang在设计中采用了分桶(Bucket),每个桶里面支持多个key-value元素的这种思路,具体可以参考下面的图[图片来源1]: 可以看到上面的B就是Bucket,每个桶中会存储多组K/V,m 阅读全文
posted @ 2022-02-15 23:15 小得盈满 阅读(1716) 评论(2) 推荐(1) 编辑
摘要:2021.12.10凌晨,Apache Log4j远程代码执行漏洞细节被公开,参考链接:https://unit42.paloaltonetworks.com/apache-log4j-vulnerability-cve-2021-44228/,也可以在cve网站上查询到:https://www.c 阅读全文
posted @ 2021-12-13 22:34 小得盈满 阅读(5358) 评论(0) 推荐(1) 编辑
摘要:之前说过python confluent kafka客户端做kerberos认证的过程,如果使用kafka python客户端的话同样也可以进行kerberos的认证,具体的认证机制这里不再描述,主要叙述配置认证的过程 需要的模块有下面这些: kafka-python:https://pypi.or 阅读全文
posted @ 2019-10-15 09:36 小得盈满 阅读(6173) 评论(0) 推荐(1) 编辑
摘要:kafka的认证方式一般有如下3种: 1. SASL/GSSAPI 从版本0.9.0.0开始支持 2. SASL/PLAIN 从版本0.10.0.0开始支持 3. SASL/SCRAM-SHA-256 以及 SASL/SCRAM-SHA-512 从版本0.10.2.0开始支持 其中第一种SASL/G 阅读全文
posted @ 2019-10-11 17:57 小得盈满 阅读(3517) 评论(2) 推荐(0) 编辑
摘要:最近项目中要用到Go语言,所以简单总结一下安装和配置,Go这个语言本身就限定了很多规范,比如项目设置,编程风格等,开发中就不需要再因为各种规范问题纠结了,直接用官方规定的能避免很多坑,下面直接切正题,go一般参考两个网站,官网和中文网,网址如下: 官网:https://golang.org 中文网: 阅读全文
posted @ 2018-08-07 15:55 小得盈满 阅读(1963) 评论(2) 推荐(1) 编辑
摘要:之前写过python dlib依赖的安装,当时是使用了系统默认的python2.7安装的boost.Python,如果自己编译好python3,想安装支持python3的boost.Python也是可以的,安装过程和之前大致上一样,但是细节上有些不一样,需要踩一些坑,下面写出详细过程,希望能对大家有 阅读全文
posted @ 2018-06-21 15:38 小得盈满 阅读(13246) 评论(4) 推荐(0) 编辑
摘要:之前写过python 3.x的独立安装,相对来说比较简单直接安装即可,因为对于系统默认的python版本是2.x,那么安装3.x的时候只需要编译到新的目录即可,所有的模块都不会和之前的2有联系,但是如果再安装2.7就不一样了,因为系统已经存在一个2.7的环境,所以新编译的python有可能还使用之前 阅读全文
posted @ 2018-06-06 10:39 小得盈满 阅读(2126) 评论(0) 推荐(0) 编辑
摘要:dlib是主要用于机器学习的库,封装了机器学习算法,可以非常方便的实现比如人脸识别,车辆识别,物体检测以其他很多功能,dlib默认使用C++进行开发,另外图像识别有一部分支持python接口开发,上手非常快,因为对于系统的安装过程,都来自官方文档的拼凑,网上资料很少,对新手会有一些坑,所以这里主要说 阅读全文
posted @ 2017-10-20 18:06 小得盈满 阅读(12609) 评论(0) 推荐(0) 编辑
摘要:前面说过opencv和python模块的安装,版本是基于opencv 2的,这篇主要说一下opencv3的安装过程以及相关依赖问题的解决,同样opencv3的安装包在官网上可以下载,最新稳定版是3.3.0,下载之后安装包为:opencv-3.3.0.zip;opencv3的安装包比2大了2倍以上,改 阅读全文
posted @ 2017-09-12 12:08 小得盈满 阅读(11451) 评论(4) 推荐(0) 编辑
摘要:Octave是一种解释类的编程语言,并且是GNU项目下的开源软件,与之相对是大家都非常熟悉的matlab,Octave和matlab语法基本上一致,都是用来快速做一些强大的矩阵运算来使用的,最大的不同是Octave是完全免费的,并且是开源的,这意味着任何人都可以直接去使用甚至修改源代码,但是matl 阅读全文
posted @ 2017-07-06 09:28 小得盈满 阅读(21789) 评论(2) 推荐(0) 编辑
摘要:ffmpeg是一个很强大的音视频处理工具,官网是:http://ffmpeg.org/ 官网介绍ffmpeg是:一个完整的、跨平台的解决方案,可以记录、转换和传输音频和视频。ffmpeg既可以播放视频,也提供命令行工具来处理视频,另外还有强大的视频处理库用于开发,下面是以Linux为例介绍ffmpe 阅读全文
posted @ 2017-05-24 11:09 小得盈满 阅读(103786) 评论(12) 推荐(2) 编辑
摘要:前面说过使用Cython来加速python程序的运行速度,但是相对来说程序改动较大,这次就说一种简单的方式来加速python计算速度的方法,就是使用numba库来进行,numba库可以使用JIT技术即时编译,达到高性能,另外也可以使用cuda GPU的计算能力来加速,对python来说是一个提速非常 阅读全文
posted @ 2017-04-01 13:16 小得盈满 阅读(25076) 评论(0) 推荐(1) 编辑
摘要:Cython是一个快速生成Python扩展模块的工具,从语法层面上来讲是Python语法和C语言语法的混血,当Python性能遇到瓶颈时,Cython直接将C的原生速度植入Python程序,这样使Python程序无需使用C重写,能快速整合原有的Python程序,这样使得开发效率和执行效率都有很大的提 阅读全文
posted @ 2017-03-14 14:12 小得盈满 阅读(63659) 评论(3) 推荐(1) 编辑
摘要:前面说过jetty最广泛的应用是可以方便的嵌入到应用程序中,而不是作为应用服务器,下面就用最简单的demo来演示一个最简单的应用 1、下载并导入依赖 首先应该建立一个普通的java项目,然后把依赖包导进去 关于依赖包的获取,第一种方式是将前面下载的jetty服务器中lib目录中的jar包导入即可 另 阅读全文
posted @ 2016-10-10 09:31 小得盈满 阅读(2151) 评论(0) 推荐(0) 编辑
摘要:Sublime Text是一款轻量高效的代码编辑器,官网地址是:http://www.sublimetext.com/,默认情况下sublime是使用tab进行缩进,如果手动敲空格是比较麻烦的,并且很多时候自动缩进都是基于tab键进行的,给开发带来很多困扰,每次设置还比较麻烦,所以需要在配置文件中永 阅读全文
posted @ 2016-08-28 09:26 小得盈满 阅读(17250) 评论(2) 推荐(3) 编辑
摘要:以下说明在Linux下Python和OpenCV结合安装的过程,Python要使用OpenCV模块,则必须导入OpenCV提供的包,所以要提供Python支持,首先在安装OpenCV前安装必要的组件,一般列表如下: 1、gcc g++一般系统自带 2、cmake 编译OpenCV时使用,需要手动安装 阅读全文
posted @ 2016-08-22 09:42 小得盈满 阅读(57036) 评论(6) 推荐(1) 编辑

点击右上角即可分享
微信分享提示