- 博客(73)
- 资源 (15)
- 收藏
- 关注
原创 【Python学习记录】matplotlib绘图基本配置
matplotlib是python中绘图的一个库,它的数据可视化的功能十分强大,在机器学习中用的非常普遍,本文就对matplotlib绘图的基本配置作一个系统介绍。
2022-12-25 15:55:08
2104
4
原创 【Python学习记录】numpy数组用法整理
numpy是python中一个科学计算的库,由于底层是C语言实现,极大提高运算性能,本文主要对numpy数组作一个系统介绍,以供自己和一些初学者参考和复习。
2022-12-19 10:17:05
1048
13
原创 【Python学习记录】Numpy广播机制(broadcast)
在、tensorflow、pytorch中数组有一种(broadcast), 就是针对两个不同形状的数组进行对应项的加,减,乘,除运算时,首先将数组调整为统一的形状,然后再进行运算。1、最简单的例子2、通用的例子3、异常的例子三、Numpy广播规则广播规则:简单理解:
2022-12-12 07:30:00
4099
23
原创 tensorflow fashion_mnist数据集模型训练及预测
前面介绍mnist手写数字集训练,本文对数据集训练和预测进行简要介绍。fashion_mnist数据集和mnist数据集类似,都是28x28的灰度图片,区分是fashion_mnist数据集是服装图片。
2022-12-03 14:51:40
1831
7
原创 tensorflow-serving docker模型部署(以mnist为例)
tensorflow模型训练出来要部署到生产环境,就需要模型预测框架,其中tensorflow-serving应用的比较多,下面就对tensorflow-serving docker部署作一个简要的介绍。
2022-11-28 07:30:00
1460
26
原创 tensorflow2 minist手写数字识别数据训练
以上就是本次的内容,来总结一下吧:主要介绍了tensorflow2梯度下降算法实现minist手写数字数据集的训练,并对结果进行可视化展示。
2022-11-26 17:57:23
2457
18
原创 【FreeSwitch开发实践】外呼线路电话收不到回铃音问题的解决
FreeSwitch服务器在对接通信线路时常会遇到一些没有声音的问题,今天就介绍一个收不到回铃音和提示音的问题。
2022-11-21 06:30:00
3795
29
原创 【FreeSwitch开发实践】FreeSwitch常用知识点总结
学习FreeSwitch对常见命令、端口及号码的了解,对FreeSwitch学习可以起到事倍功半的作用,下面博主整理一些常用知识点,希望对学习FreeSwitch的朋友有帮助。以上就是本次的内容,来总结一下吧:主要介绍了常见的FreeSwitch命令、默认号码和默认端口。如果觉得有些帮助或觉得文章还不错,请关注一下博主,你的关注是我持续写作的动力。另外,如果有什么问题,可以在评论区留言,或者私信博主,博主看到后会第一时间进行回复。【间歇性的努力和蒙混过日子,都是对之前努力的清零】本文链接。
2022-09-18 18:16:36
3669
39
原创 猿创征文|【FreeSwitch开发实践】使用sipp对FreeSwitch进行压力测试
FreeSwitch作用外呼系统的底层服务器,其稳定性至关重要,因此有必要对FreeSwitch作一个压力测试。而在FreeSwitch压力测试方面,sipp是最好用的工具,也是FreeSwitch官方推荐的。
2022-09-03 20:40:34
5206
60
原创 【FreeSwitch开发实践】外呼网关配置(拨打电话)
FreeSwitch开发一个重要应用是外呼,所谓外呼就拨打真实电话或手机号呼叫,配合语音机器人可以实现智能客服的功能。外呼配置主要是配置外呼服务器,外呼服务器主要指SIP网关,每个外呼服务器就是一个SIP节点,FreeSwitch服务也可以是一个SIP节点。本文主要介绍了FreeSwitch外呼相关配置,主要有外呼配置的模式,包括注册模式和非注册模式网关加载的查看方法拨号中常见的呼出配置和呼入配置如果觉得有些帮助或觉得文章还不错,请关注一下博主,你的关注是我持续写作的动力。............
2022-08-15 06:30:00
11679
90
原创 Kaldi语音识别工具编译问题记录(踩坑记录)
最近由于项目需要要研究下ASR语言识别,用到了Kaldi语音识别工具,Kaldi是一个语音识别的工具箱,由C++语言开发,外围用shell脚本或其他脚本调用。这里主要记录下一在编译Kaldi时遇到各种问题(坑)。以上就是博主在编译Kaldi时踩的坑,记录下来,如果你也遇到同样的错误,希望对你有帮助~..................
2022-08-10 08:59:31
2843
52
原创 【FreeSwitch开发实践】自定义事件介绍与使用示例
我们在之前章节介绍过ESL自定义事件订阅《【FreeSwitch开发实践】 ESL简介》,本篇介绍下在FreeSwitch中编写自定义模块,并定义自定义事件,然后发送事件、和用fs_cli中进行事件订阅。自定义事件,是在FreeSwitch标准事件如Answer、Hangup事件之外,用于扩展事件,在实际业务中,可通过自定义事件将一些重要的结果,如ASR的识别结果、空号识别检测结果,通过ESL传输出来。.....................
2022-08-07 15:44:20
1864
62
原创 【FreeSwitch开发实践】UniMRCP编译与安装
UniMRCP是MRCP客户端和服务器的开源跨平台实现,采用C/C++语言,根据Apache许可证2.0的条款分发。它实现封装了SIP、RTSP、SDP、MRCPv2、RTP/RTCP协议栈,对外提供了提供了MRCP版本一致的API。MRCP协议,全称MediaResourceControlProtocol,媒体资源控制协议,用于语音服务器向客户端提供各种语音服务(如语音识别ASR和语音合成TTS)。.........
2022-07-28 22:17:09
3219
94
原创 【FreeSwitch开发实践】media bug获取通话语音流
上一篇介绍创建和使用自定义模块,创建一个自己的app嵌入到FreeSwitch;这一篇介绍运用“mediabug”,获取通话语音流。什么是mediabugmediabug有什么用,能干什么第一个问题我们放到后面详细介绍,第二个问题mediabug能干什么,mediabug主要用来监听通话语音数据,而拿到通话语音流了可以做很多事情,可以加不少业务通话监听分析语音,即通常说的ASR(语音识别)说明了什么是mediabug如何使用mediabug获取通话语音流关注。............
2022-07-28 06:42:02
5701
84
原创 【FreeSwitch开发实践】自定义模块创建与使用
在FreeSwitch的架构中,存在为数重多的模块或接口,在FreeSwitch中称为app和api,如果常用的接听模块answer、挂断模块hangup、睡眠模块sleep、回音模块echo等,数量非常之多,这些app和api共同组成了FreeSwitch的核心。然而,FreeSwitch还提供了自定义模块的功能,开发者可以按照标准接口自己实现一个app,然后在通话中使用,极大地拓展FreeSwitch的能力,也方便在实际业务中实现特定的功能。............
2022-07-26 06:50:33
3002
138
原创 【FreeSwitch开发实践】使用SIP客户端Yate连接FreeSwitch进行VoIP通话
常见的SIP客户端有很多,比如Yate、Xlite、Linephone、Zopier等,本文主要介绍Yate的使用,通过连接FreeSwitch,进行VoIP通话体验。
2022-07-25 08:22:06
2384
40
原创 【FreeSwitch开发实践】专栏简介
首先,FreeSwitch是一个软电话交换平台的开源框架,由C语言开发,可以用来开发智能客服、自动外呼系统等。本专栏主要介绍博主在实际项目中使用FreeSwitch开发外呼类项目的一些经验心得,主要涉及FreeSwitch的基本安装编译、基本配置、ESL、WSS、录音、自定义模块、mediabug、语音播放及对接AI机器人等内容。内容在持续更新中,如果感兴趣可以对专栏进行订阅,方便关注查看。...
2022-07-23 18:50:01
1863
9
原创 【FreeSwitch开发实践】C语言中使用ESL连接FreeSwitch
之前在《【FreeSwitch开发实践】在nodejs中用ESL连接FreeSwitch》一文介绍了在NodeJS下使用ESL连接FreeSwitch,本文则对在C语言下使用ESL连接FreeSwitch作了一个系统介绍。和NodeJS下使用ESL需要安装modesl模块一样,C语言下使用ESL也需要libesl库.以上就是今天的内容,详细的介绍了C语言使用ESL连接FreeSwitch。如果觉得有些帮助或觉得文章还不错,请关注一下博主,你的关注是我持续写作的动力。.....................
2022-07-20 07:00:00
2313
65
原创 【FreeSwitch开发实践】死锁问题解决Over Session Limit 1000/Locked, Waiting on external entities
今天介绍一个博主项目中遇到的问题, 当日系统外呼数达到1000之后,后续外呼无法再成功,从日志上看Over Session Limit! 1000 即有错误信息,就好办了,顺藤摸瓜查就是了。
2022-07-16 18:09:00
2398
69
原创 【FreeSwitch开发实践】在NodeJS中用ESL连接FreeSwitch
前文对ESL作了简介和配置的说明,本文将介绍在NodeJS中使用ESL,通过一些简单的例子,对如何在NodeJS使用ESL作了一个说明。在NodeJS中ESL的实现,是modesl模块,这个模块需要下载安装。
2022-07-12 07:11:11
1942
59
原创 【FreeSwitch开发实践】ESL配置
在《【FreeSwitch开发实践】ESL配置》对ESL作了简要介绍,知道了ESL实际就是对Event Socket的一组实现库,在这里主要对FreeSwitch下如下配置ESL作了一简介。
2022-07-10 08:00:00
3396
28
原创 【FreeSwitch开发实践】 ESL简介
本文主要对freesiwtch ESL做一个简要介绍,ESL全称Event Socket Libray是freeswitch中一组socket的库函数。要了解ESL首先要先了解什么是Eevent Socket,Event Socket可以使运行在freeswitch外部的程序控制freeswitch, 可以使用socket的方式使用freeswitch提供的所有API和App,因为几乎几乎任何语言都支持socket,所以它几乎可以跟任务语言进行通信。..................
2022-07-09 21:22:15
5746
14
原创 【那些年C++趟过的坑】strncpy字符串截断缺陷
字符串拷贝,学过C/C++的人都非常熟悉,但这个函数有一个需要注意的地方,当字符串src大小比目标数组dest大时,那就会内存越界,发生崩溃。为了解决这个问题,strncpy诞生了,先看下定义:strncpy加一个参数num, 意为最大可拷贝的空间大小,就是说当字符串src长度比dest大时,会自动截断。不过谁知道呢,strncpy会不会在截断发生时被’\0’呢。.....................
2022-07-09 16:24:06
3364
18
原创 【FreeSwitch开发实践】centos7下编译安装freeswitch及常见编译问题的解决
freswitch在centos7下编译总体上还是不难的,但一些看似很难实则很容易甚至不需要解决的问题往往会”欺负“一些初学者(比如说本人);本文主要介绍centos7下freeswitch的编译过程,和常见的编译中问题及解决方法。freeswitch的依赖非常多,如果不安装依赖就开始编译freeswitch,那就遇到更多的问题,安装依赖之后,可以解决90%以上的问题。.............................................
2022-07-03 12:44:07
5964
46
原创 【FreeSwitch开发实践】freeswitch ngnix wss反向代理及jssip修改(wss连不上问题解决)
首先freeswitch支持UDP、TCP、WS(websocket)、WSS方式进行注册,而反向代理是指通过nginx配置,通过WSS的方式连接WS,这样使得freeswitch连接对外是加密的;当然freeswitch本身是支持WSS的, 用ngnix一般除了反向代理,更多的是作负载均衡,这里只介绍向代理的部分。........................
2022-07-02 16:39:22
4633
7
原创 【FreeSwitch开发实践】freeswitch配置wss证书问题 Encrypted Alert/Certification Unknown
配置freeswitch wss证书经历各种曲折经历,怎么尝试都失败,尝试了linux和windows,转机是windows可行,发现规律一解决问题,畅快淋漓(ps: 也许自己太菜,高手可能一眼就知道是什么问题,而自己花了3天才发现原因,记录下来,以供自己和初学者参考)。...........................
2022-06-16 21:53:49
5338
27
原创 【FreeSwitch开发实践】FreeSwitch配置wss
freeswitch 配置websocket, ws/wss,默认端口7443
2022-06-16 21:10:55
7668
2
原创 apr queue队列使用
apr queue队列使用文章目录apr queue队列使用前言一、接口简介二、代码示例三、注意总结前言了解下apr_queue的使用一、接口简介/*apr_queue.h **/APU_DECLARE(apr_status_t) apr_queue_create(apr_queue_t **queue, unsigned int queue_capacity,
2022-05-31 14:53:29
546
原创 apr线程使用
主要对apr 线程作一下简单介绍,涉及apr_thread_t、apr_thread_mutex_t、apr_thread_cond_t等的使用。
2022-05-27 21:59:37
690
原创 QT - 创建有BOM头的UTF8文件
QT - 创建有BOM头的UTF8文件创建有BOM头的UTF8文件文章目录QT - 创建有BOM头的UTF8文件前言一、关键方法二、使用方法总结前言QT默认创建UTF8格式的文件是无BOM格式的UTF8文件。一、关键方法有BOM UTF8格式关键方法如下:void QTextStream::setGenerateByteOrderMark(bool generate);void QTextStream::setCodec(const char *codecName);二、使用方法
2022-05-23 11:39:32
1165
原创 apr内存池简单应用
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、内存池接口简介1、初始化2、创建内存池3、使用内存池分配内存4、释放内存和销毁内存池二、使用步骤1.引入库三、调用示例总结前言libapr大部分接口函数内部申请内存和释放内存,都会用到内存池。提示:以下是本篇文章正文内容,下面案例可供参考一、内存池接口简介1、初始化/** * Setup all of the internal structures required to use pools * @re.
2022-05-22 22:14:06
779
原创 Windows下编译apr、apr-util
Windows下编译apr、apr-util最近使用开源库的过程中发现在依赖库经常出现apr这个库,发现它提供了好多基础功能,如字符串处理、文件操作等,其中比较吸引人的是内存池、线程相关的内容,打算对apr作一个系统性的学习,谨以此记录下。
2022-05-22 21:46:57
2017
原创 C++8种排序算法实现
#ifndef SORTUTILS_H#define SORTUTILS_H#include <vector>#include <string>using std::vector;using std::string;class SortUtils{public: SortUtils(); //快速排序 static void ...
2020-03-03 18:45:04
250
原创 GDI -- 将灰度图数据画到控件上
实现功能将灰度图内存数据画到控件上原始灰度图的宽高与控件宽高不相同在画到控件上之前要在原始的灰度图上做一些效果,如叠加文字、画效果图形等 上代码void ShowFrameOnCtl(HWND hWnd, unsigned char* frame, int w, int h){ HDC hdcPicControl; // GetDC() need to be Release...
2019-10-29 22:09:19
462
原创 C++ STL之前vecotr与list性能实测
C++ STL之前vecotr与list性能实测前言vector与list谁的速度更快?实验结束分析前言STL中vector用比较,list由于习惯原因基本没用,最近看了下list的用法,发现和vector用法基本相同,只是list示支持按下标索引元素,需要枚举器访问。下面是经常说到vector和list的两种区域vector会自动增长的数组,内部是对数组的封装,最大的优势就是随机访问的......
2019-01-20 14:23:32
4690
1
原创 拷贝构造函数和赋值运算符及怎样返回一个类的对象
最近工作中偶然的机会,要写一个封装函数,实现的功能是返回一个类(封装了xml的操作)的对象,遇到的问题是返回后的对象一直是被销毁的状态。为了方便全部是截图,个人有点懒了~下面是主程序:主要代码就中间那三行, 主要来练习赋值运算符和拷贝构造函数的用法。下面为方便调试在类中加一个标记a,其中Read是一个static的方法,a是static的成员变量,下面主要实现代码: ...
2019-01-05 18:04:06
530
原创 保存DC到bmp图片的两种方法
这里主要记录一下平时经常用到的控件贴图方法,在必要的时候将DC保存成bmp文件方便检查程序中贴图有时背景不正确的情况。方法1:纯Win32 GDI的方法,保存HBITMAP用的是CImage类void SaveDC2BMP(HWND hwnd, TCHAR *path){ HBITMAP hBitmap; HDC hdc, hTempDC; RECT rec......
2018-08-26 18:07:47
4072
原创 [MFC] PictureEx类使用和图片居中
最近项目中要显示gif动态图片,偶然中发现一个不错的类PictureEx,显示gif非常的溜。不过也发现它不支持图片居中、图片按原比例显示能操作,因此做了一些小的修改来支持。由于网上介绍PictureEx类的文章太多了,这里不再赘述,只介绍图片居中显示和图片铺满控件的修改。图片居中并按原比例显示:void CPictureEx::SetCenter(){ CRect rc; th...
2018-06-23 18:47:36
1910
1
原创 [MFC] ComboBox下拉列表高度和滚动条设置
(PS:下拉列表设置起来很简单,几乎不用写代码,不过之前遇到下面第1步怎么都出来的问题,困扰了好久。。。)CombBox高度设置:1. 单击下拉列表右侧的小三角,可以调整高度2. “Vertical Scrollbar”启用垂直滚动条,“No Integral Height”属性可以控制在超出上面设置高度后显示滚动条...
2018-06-11 22:50:55
7325
原创 QString 中文编码转换
QString GBK2UTF8(const QString &str){ QTextCodec *utf8 = QTextCodec::codecForName("UTF-8"); return utf8->toUnicode(str.toUtf8());}QString UTF82GBK(const QString &str){ QTextCodec *gbk
2017-07-10 22:17:26
17778
FreeSwitch完整的自定义模块定义和改善自定义事件的例子
2022-08-07
C语言ESL连接FreeSwitch
2022-07-23
freeswitch ngnix wss反向代理,jssip配置
2022-07-02
PictureEx使用及图片居中等修改
2018-06-23
js在编辑框input下根据输入内容显示匹配内容的下拉列表
2016-01-27
OpenCV2.31+VS2005编译版本.rar
2011-09-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人