记一个ASP.NET调用原生C++ DLL的坑

摸了好久都没写文,主要寒假在玩以及在写实验室项目。 刚好最近实验室项目图像处理部分要用到C 后来根据才发现,这个库包含了native的C 解决方法就是照上面链接给出的在写托管DLL的时候将原CLL延迟载入。但是因为这个库并不是我自己的,没法改动,估计只能零写一个单独的应用程序,通过进程间通信的方式来给后端提供数据了。

阅读全文

正在用ASP.NET Core写一个博客框架

好久没更博客了,主要是一边上课和给实验室打工,一边在自学ASP.NET Core。 学的同时在写一个博客框架,基础的MVC架构,视觉上用了微软的Fluent Design。目前主页部分基本完成,文章页面、Tag、友链都还没完成,路还很漫长...... 丢个预览视频:

阅读全文

校园网实现自动网页认证

开学了,学校的校园网真的不靠谱,用户验证很容易失效,每天打开电脑基本都要重新登录网页进行验证,繁琐不说,一些开机自启的软件还会因为没网而出问题。 为此特地研究想办法写了个python脚本(为什么用python?因为我不会写cmd和powershell的脚本啊),以及通过任务计划,实现连接校园网时自动运行脚本。 首先说明我们学校校园网是通过网页端登录认证的,不同学校情况不同,仅供思路参考。 首先打开浏览器进入认证页面,先不登录,按F12打开控制台,选择Network选项卡。 然后再输入用户名密码进行登录,可以看到右侧Network选项卡开始活动。 Name下可能有好几项内容,仔细观察一下还是能比较容易看出跟验证是否相关的。我这里有两项get请求,可能有的校园网一个post请求就可以验证了,要看具体情况。 这样我们就知道我们需要发什么请求才能进行验证,而我们要做的就是利用python帮我们把相应的请求发出去。 为了方便我们可以右键内容,把请求复制成相应的代码。我这里选择Copy as cURL (bash),一方面可以方便转换成python代码,一方面以后用路由器,可以直接写一个再linux下使用curl的bash脚本。 为了图方便我们使用工具,把两段分别复制进去,在左边选择Python 但是每次连接校园网时分配到的ip地址可能并不相同,我们需要在每次运行时自动获取当前ip。 这里利用了中的方法二来获取本机ip。另外再把用户名和密码改为参数形式,便于后续修改。 ``` import requests import socket user = "" password = "" try: s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect((' ip = s.getsockname()的 然后在操作选项卡中新建操作。选择「启动程序」,程序选择pythonw.exe,「添加参数」中输入python脚本的名称,「起始于」中输入脚本所在路径。 最后保存即可。这样每次电脑开机自动连接到校园网时,就会运行验证脚本。 使用路由器的话原理类似,首先需要一台openwrt或者padavan系统的路由器,然后写一个bash脚本,获取分配的ip地址,再通过curl发送验证请求。

阅读全文

Lenovo 500 FHD Webcam 入手

刚买了个Lenovo 500 FHD Webcam,也就是联想的新款电脑高清摄像头,主要原因是相关项目开发的需要,另外(实际更重要的)一点是——这款摄像头支持Windows Hello。 现在手机解锁如此方便,于是我也想在电脑上有这种体验,所以之前就想过要搞一个Windows Hello的设备回来。但一看某宝,不论是受支持的摄像头还是指纹识别都不便宜,相对便宜点的摄像头还是拆机零件搞出来的组装货。而前不久这款摄像头正式发售,标价249,而一般旗舰店都保持着199的售价,性价比巨高,这次就趁机入手了。 首先是包装盒,正面。 不愧是美帝良心想,除了后贴的贴纸,包装上连个中文都没有。 把摄像头和线取出来。 摄像头的部分是上下和水平幅度可调,能够360°旋转的。 借个官网图,主要构造是这样的。 红外指示灯在Windows Hello工作的时候会闪烁。上方还有物理的开关,可以用来移动挡板遮住镜头。 背面只有一个Type 使用的时候可以把下方夹子打开,它并没有夹力,主要是靠前面的凸起钩住显示屏上方,然后下面的部分顶住显示器后侧做到基本的固定。 把数据线接上就可以直接使用了,无需另外安装驱动。 首先看一下拍摄效果,这里用Win10自带的相机。原分辨率是1080p的,为了省流量对图进行了压缩。 我是晚上20时拍的,可以看到这个噪点真的惨不忍睹。白天情况好一些,虽然也没有很清晰,但是用作视频会议之类的用途已经完全足够了。 Windows Hello在中开启。可能第一次接上摄像头的时候,这里会提示找不到可用设备,重启就好了。之后按照步骤设置即可。 开机进入锁屏页面时,上方会出现一个「眼睛」图标,同时系统自动进行人脸识别,速度很快,感觉只要1秒不到就能完成验证。 虽然画质清晰度比较拉胯,但它毕竟是只要199就能买到的Windows Hello设备,还要啥自行车,爽就完事儿了。

阅读全文

Python标准库之wave

项目需要利用一个svm模型对语音进行测谎,而在此之前要对wave文件进行处理,我们可以使用Python自带的标准库wave。 但实际我并不推荐使用wave,用soundfile, librosa和pydub之类的第三方库会方便和强大得多。但是项目先前已经用到了,就只能继续用着。 话说我的博客真的是想到啥写啥,不系统,也没啥深度,纯当水一水吧。 wave库可以(其实也是只能)对WAV文件做一些简单地处理。 跟普通文件IO中的open差不多。 分为和。是只读模式,返回一个对象。是只写模式,返回一个对象。无法同时对一个对象进行读写。 使用完毕后也要调用关闭文件。 比如: 或者用with写法,会自动调用 使用前面用以只读模式打开,返回的对象。 主要方法: 另外音频时长可以利用总帧数除以采样率得到,单位为秒: 使用前面用以只写模式打开,返回的对象。 主要方法: 截取音频文件5s ~ 8s的部分: 上方示例里,wave可以实现截取片段的操作,但是想要实现双声道转单声道、重采样之类的操作可能就要手动对帧数据做修改,我没有尝试过。这里用librosa可以很方便实现(librosa保存音频文件需要依赖soundfile)。 例子: librosa还有很多更高级的用法,我也还没研究,就不在此献丑了。

阅读全文
公告栏

欢迎来到Fluent Blog,一个基于ASP.NET Core 5.0 MVC的博客。前往主站请访问www.cosineg.com

动态
@余弦G:

博客部署成功~

2021/4/22 上午12:15:08
124