果然计算机都是一家人哈哈哈

今天在看opengl帧缓冲的时候,里面提到了帧缓冲的一些作用。

原文在这里:https://learnopengl-cn.github.io/04%20Advanced%20OpenGL/05%20Framebuffers/

核(Kernel)(或卷积矩阵(Convolution Matrix))是一个类矩阵的数值数组,它的中心为当前的像素,它会用它的核值乘以周围的像素值,并将结果相加变成一个值。所以,基本上我们是在对当前像素周围的纹理坐标添加一个小的偏移量,并根据核将结果合并。下面是核的一个例子:

$$\begin{bmatrix}2 & 2 & 2 \\ 2 & -15 & 2 \\ 2 & 2 & 2 \end{bmatrix}$$

这个核取了8个周围像素值,将它们乘以2,而把当前的像素乘以-15。这个核的例子将周围的像素乘上了一个权重,并将当前像素乘以一个比较大的负权重来平衡结果。

唉!是不是很熟悉!

这不是卷积吗?好像啊哈哈哈

然后继续往下看!哦,这不是边缘检测吗?(笑

都是老熟人了(bushi

原渲染图:

边缘检测:

题外话:好几个月没登的博客已经被各种评论填满了:(

可能又是什么bug吧?居然都给批准了,害的主页都1k多条评论。

已经习惯了= w =

缝缝补补又是一年

体验AI绘图小马图 Stable Diffusion体験ツアー!!!!

教程在这 https://rentry.org/voldy 自己看哈哈哈哈!

折腾了一下午,遇到两个问题,一个是python版本的问题,解决方案是在环境变量里把需要用的版本往上移,这样在命令行里用python命令就是自己需要的python版本了,记得script文件夹也要往上移动,因为pip命令也是跟着pyhon的版本的。

这个模型用的是3.10版本的python。原先电脑里用的是3.12。在命令行里用pyhon命令会默认使用3.12。把3.10的目录往上移动在3.12版本之前就可以解决这个问题了。

另一个问题是SD(stable diffusion)运行之后网页出现一大堆乱七八糟的报错

error

Expecting value: line 1 column 1 (char 0)

把全局代理给关上就可以了。我这里是把代理改成绕过大陆就好了。

最后!看看效果图吧嘿嘿嘿 小马嘿嘿嘿

模型:easyfluff_v10 先生成512*512的图用来快速确定关键词 之后扩展一倍像素后变高清

对了,使用xformers为显卡加速。原先几分钟一张512*512的图,现在只需要几十秒(显卡设备gtx1060) 教程在这里 https://huggingface.co/docs/diffusers/optimization/xformers

模型可以这些地方下载:https://civitai.com/ https://huggingface.co/ https://openmodeldb.info/

添加自定义鼠标图标

之前偶然机会进去看了看以前加的web群。里面的大佬各种秀,又燃起了唔写web的热情。看看自己的博客都已经有大半年了,还是原来的模板,惭愧啊

这次就先加一个小东西吧,效果见这个页面的鼠标

在css里面有这样一个标签cursor

就是用来改变鼠标样式的

url需使用的自定义光标的 URL。注释:请在此列表的末端始终定义一种普通的光标,以防没有由 URL 定义的可用光标。
default默认光标(通常是一个箭头)
auto默认。浏览器设置的光标。
crosshair光标呈现为十字线。
pointer光标呈现为指示链接的指针(一只手)
move此光标指示某对象可被移动。
e-resize此光标指示矩形框的边缘可被向右(东)移动。
ne-resize此光标指示矩形框的边缘可被向上及向右移动(北/东)。
nw-resize此光标指示矩形框的边缘可被向上及向左移动(北/西)。
n-resize此光标指示矩形框的边缘可被向上(北)移动。
se-resize此光标指示矩形框的边缘可被向下及向右移动(南/东)。
sw-resize此光标指示矩形框的边缘可被向下及向左移动(南/西)。
s-resize此光标指示矩形框的边缘可被向下移动(南)。
w-resize此光标指示矩形框的边缘可被向左移动(西)。
text此光标指示文本。
wait此光标指示程序正忙(通常是一只表或沙漏)。
help此光标指示可用的帮助(通常是一个问号或一个气球)

其他的都是可以在教程往上面了解很清楚,就不详细说了。咱们就主要来说说自定义的吧

要想用url来自定义鼠标的图标,就要有cur文件(静图)和ani文件(动画)

他们可以从百度,Google上面找到,因为这些素材特别乱唔也没找到什么好的网站,就不推荐了

像唔这样想表达个性的人来说,自己做是最好的。这里有推荐的软件名字叫anifx

点击这里下载

下载完成后解压,进入AniFXchina文件夹,双击打开AniFX.exe。

右上角,点击文件,新建

一般默认就好了,第一次使用都是默认肯定没有什么问题哒~

然后就是作画时间了,一开始就随便糊弄一下就好了,主要是方便以后的使用。

之后文件另存为一个比较方便的地点。比如在直接的网页目录下~

在css里面添加这段代码

body{
cursor: url('http://blog.ziyicitu.com/wp-content/uploads/2019/09/citu.cur'),auto;
}

url里面就是自己cur文件的路径,后面一般要加一个默认图标,防止url里面的图标不能用。这里你可以直接拷贝这个到css里面就可以直接看到效果。

对于wordpress来说,要添加额外的css效果可以登录到自己的站点,在自定义最下面就可以看见额外的css。

如果要给特定的文章加css,wordpress早就预料到了这一点,每一篇文章都有一个独特的css名称。例如这篇文章的,就是postid-160

知道需要指针图标的id后就可以在css里面直接添加

.postid-160
{	cursor:url('http://blog.ziyicitu.com/wp-content/uploads/2019/09/citu.cur'),auto;
}

这样只要在body的盒子里鼠标就会变成自己画的那样,但是遇到子盒子就会变回原来的样子。解决方法之一就是加一个写css文件,专门用来放自己的图标。

然后在不同的盒子里面用各种特殊的指针,打造属于自己的博客o(〃’▽’〃)o

今日绘

嘿嘿

虽然有点牵强,但是我也是画了画的呀

看,这就是画出来的结果哦

/*--  调入了一幅图像:这是您新建的图像  --*/
/*--  宽度x高度=16x16  --*/
0x00,0x00,0x00,0x9F,0xBE,0x78,0x73,0x2F,0x3B,0x4C,0x97,0xAF,0xD4,0x3F,0x07,0x00,
0x00,0xC0,0x21,0x92,0x8A,0x46,0xAB,0x91,0x52,0x24,0x14,0x0C,0x10,0x2F,0x10,0x00,

用单片机加上一些代码,就变成了美丽的画(笑

16*16像素的单色画,感觉真的很奇妙,就像发现什么不可思议的秘密一样。惊喜!

当然也不是本专业要学的东西,因为感兴趣,就买了装备在寝室里面自学

学习资料什么的,卖家都准备的特别好,基础的什么东西啊,知识什么的应该都会交给我的

自己的学习欲得到满足,真的超爽

看到自己亲手做出来的东西才充满了意义

画的是个小精灵,好像是冒险岛里面的人物,找像素图的时候看见了

用鼠标一个一个点出来的,感觉很神奇,做事情就是要感受过程,一味的为了什么结果,反而会市区很多东西

继续前行!喵~

这么久终于静下心来写点东西了

虽然说是要经常更新来着,前一段时间服务器出现了一些问题,弄了好些天,重新买了一台服务器用,性能是原来的两倍。心疼(๑◕︵◕๑)钱。

但是用起来,真香!

这次网站的事故,其实也学到了很多东西,博客的迁移,网站的重构,数据库的还原,防一些dos什么的。┻━┻ ヘ╰( •̀ε•́ ╰)就是没更了嘛。

接下来说说人工智能的事吧。服务器崩掉的那段时间继续向前学习了一段,都是在学习数学的基础。线代啊,离散啊,看的头疼。

到现在反而不相信人工智能真的可以完成我的初心嘛。完全的数学推导,反而玄学一些的电子生命倒是有很大的兴趣。

收集到一些关于神经细胞发育的资料https://wenku.baidu.com/view/2da45e275727a5e9846a6105.html

神经在连接肌肉时和神经相互连接的方式是完全不同的。突触连接到的细胞发生兴奋时,可能会反馈给链接到这个细胞的所有突触,如果这个兴奋不是由此突触产生的,突触会逐步消亡。(猜测

不知道神经之间的链接是否也是有这个规则,因为神经递质的多样性(有的抑制,有的兴奋),在计算机上完全模拟一个神经元是很难的。需要找到连接规则,而这个规则只能参照现实生命。真的不知道,原始的生命是怎么使用第一个神经细胞的呢。

神经之间的连接通讯如同计算机cpu一样频率是极高的,但是神经自己解决了与机体通讯的频率差。

╮(╯-╰)╭好吧…依旧是自己努力不足,有很多想法,无法开始实验。一些关键性的东西还要好好想想才行,比如时间方面。咱们的嘤嘤怪避免不了要准备至少两个时间频率,一个用来刷新每个神经元的传递信息,一个用来与环境交换信息。暂时还没有想到更简单检验神经元规则的方法。

开始用控制台应该就可以把环境做好,用以前的贪吃蛇场地。然后还要想好怎么给我们的神经细胞一个生存环境。

最近一段时间要期末考试,应该要继续鸽下去啦= =

初心

由于最近一段时间一直无所事事,也无心敲代码,算是颓废了。

前段时间,突然看到自己笔记本里记着刚开学的时候写给自己激励的话,给了我很大的精神激励。毕竟大一就快要这样草草了了的过完了,自己的梦想却依旧这么遥不可及。所以,又一次给自己下一个目标,开始写起自己的博客,好让自己不忘初心。

至于我的初心嘛,已经幻想很久啦。现在的人工智能怎么发达,为什么没有人去做一个虚拟的环境,在里面活着虚拟的生物,当然要有最珍贵的感情。然后在是把虚拟生物映射到现实生活中。

想法是这样的,先搭建一个实验场地。例如一小块草地,一开始上面什么都没有,只是一个小场地而已。然后有咱们的第一代小生物,咱们叫它一号嘤嘤怪。一号 嘤嘤怪可以在周末的小草地上移动,为了简化实验,一号嘤嘤怪只能向四个方向移动,所以咱们的场地也就像植物大战僵尸里面的一样,分成一块一块的。

一块硕大的场地被分成若干的格子,实验对象就只能在对应的格子里

现在让咱们来赋予嘤嘤怪生命。首先生命需要物质的基础,所以咱们需要食物,用一个大大的黄点来表示食物的位置。为了让咱们的嘤嘤怪可以找到食物,食物要发出一些信息,好被嘤嘤怪发现,然后吃掉。所以大黄点会发出橙色的气味。

黄色的圆表示的是食物,她会向四周发散气味(四个橙色的箭头表示的就是气味,她自己所在的位置也有自己的气味,没画出)右下角的粉红心就是嘤嘤怪。

好了,现在有了食物,咱们的嘤嘤怪就要为了食物而奔波,所以他需要有可以向四个方向移动的腿。所以嘤嘤怪的第一个类别的属性就是移动,在四个方向上的移动。然后他要能感应到食物的存在,所以需要鼻子,四个方向上的鼻子,分别可以感受到各个方向的气味。这是嘤嘤怪的第二个属性,味道感受。

只有这两个属性的生物是无法存活下去的,因为就像一堆电子原件和电路板一样,把它们推在一起就和一堆土一样不是我们想要的。因此要把吃食物的本能也加入到嘤嘤怪的身上。

本能,感受到哪个方向上有气味就向哪个方向移动。用0和1来表示,这很简单就能完成。

蓝色的六边型代表的是鼻子感受范围。本能就是如果蓝色的六边形和橙色的箭头在一个格子(鼻子闻到了气味)就向有气味的方向移动。

直到把食物吃掉,气味消失,然后咱们的嘤嘤怪去寻找新的食物。

好啦,咱们最开始的小生物就做好了。对于俺来说,一个干净美丽的实验场地就建好了。千万别认为咱的野心就这么小,任何伟大的事业都是从看起来和事业毫不相干的事情开始的。

可怜的嘤嘤怪只能感受四个格子的气味,食物也只发出四个格子的气味(不包括食物所在的格子)如果可怜的嘤嘤怪没有气味的引导,那他就只能饿死,所以唔不会让这种事情发生的。

下一步,让我们的嘤嘤怪进化。我们让他长出眼睛(哈哈夸张一下)。眼睛很神奇,她能感受到很远的地方。这算是嘤嘤怪的第四个属性吧,可以感受到遥远发来的气味。

眼睛,可以感受到气味的存在,当然嘤嘤怪有四个眼睛,分别向四个方向看。用0和1来表示能否看见。

紫色的方框表示眼睛看到的范围。

这个眼睛可以感受到气味的存在!没错,只要视野范围内有气味就可以感受的到。但是,这个高级的器官不存在本能。也就是说,咱们的嘤嘤怪一开始并不会使用这个强大的功能,他需要学习如何使用眼睛。

如何学习呐?这就要现在最有前景之一的人工智能。深度学习,是我现在所知最好的方法。通过本能,引导眼睛的学习与使用。用神经网络应该可以实现,或者其他也可以实现,甚至小学学的回归方程就可以。不过个人喜欢神经网络,也为了以后嘤嘤怪更强大的进化,必须要有一种神奇的方法解决这个问题。所以深度学习,是唔目前的目标。也是一个开始,还有很多后续的想法都是建立在这个之上的,如果第一步都实现不了的话,可能这个想法行不通,必须换一种思路。

唔已经开始看一些关于人工智能的课程,买了相关的书籍,以后的日志应该都会于此相关,也算是激励自己不能颓废下去。
尽量经常跟新啊。

唔,迷茫ing

终于算是入门了OpenGL,反而到现在却不敢在往下进行了。无数方块背后是无穷的代码编制成的世界,如果是这样的话,好像没有什么意义在继续下去了。

星星啊,如果不介意的话,可以给我一个拥抱吗。让我好好睡一觉,忘了这个。然后,唔就会好好的,继续下去了\(≧▽≦)/

应该去休息了,休息,休息一下~