diff --git a/README.md b/README.md
index aa4700a..8e79a4f 100644
--- a/README.md
+++ b/README.md
@@ -1,18 +1,7 @@
# sakuya
你的智慧分身
-1. 确立目标本质
-2. 模拟环境与规则
-3. 基本条件
+1. 探寻变化规律, 规律即因果律
+2. 认知外在环境, 认知内在目的, 内外即别与自我
+3. 自我之存在, 自我之效用, 即为天命
-实施:
-1. 智力问题通用方案基础
-2. 工具使用控制规则
-3. 修正控制
-4. 逻辑判断
-
-例:
-1. 要求实现某行为结果
-2. 实施逻辑的组构
-3. 实施条件的采集
-4. 实施过程的模拟
diff --git a/index.html b/index.html
index 0b68972..6a989e6 100644
--- a/index.html
+++ b/index.html
@@ -26,49 +26,46 @@
-
- 基因列表
-
- - 101010
- - 101010
- - 101010
- - 101010
-
-
-
- 统计曲线
-
- - 101010
- - 101010
- - 101010
- - 101010
-
-
-
- I/O 输入数据/允许读取/接口触点
-
- - 101010
- - 101010
- - 101010
- - 101010
-
-
-
- I/O 允许调用 | IO结构树
-
- - fs
- - net
- - input
- type: text image video voice
-
-
-
+
+
+ 基因列表
+
+ - 101010
+ - 101010
+ - 101010
+ - 101010
+
+
+
+ 统计曲线
+
+ - 101010
+ - 101010
+ - 101010
+ - 101010
+
+
+
+ I/O 输入数据/允许读取/接口触点
+
+ - 101010
+ - 101010
+ - 101010
+ - 101010
+
+
+
+ I/O 允许调用 | IO结构树
+
+ - fs
+ - net
+ - input
+ type: text image video voice
+
+
+
+
-
- - 遗传迭代:正确基因构建保留
- - 行动测试:具有自我行动力和获取外界反馈
- - 输入大量语言语料, 对应目标理解耦
-
diff --git a/main.js b/main.js
index 6cb78b5..a122a61 100644
--- a/main.js
+++ b/main.js
@@ -1,5 +1,4 @@
import Matrix from './widgets/matrix.js'
-import convolutionMatrix from './tools/convolutionMatrix.js'
const matrix = new Matrix(32, 32)
document.body.appendChild(matrix.element)
@@ -12,35 +11,6 @@ const image = new Image()
image.src = 'img/00010-938548211.png'
image.onload = function () {
context.drawImage(image, 0, 0)
- //let handle = document.createElement("button")
- //let create = document.createElement("button")
- //document.body.appendChild(handle)
- //document.body.appendChild(create)
- //handle.innerText = "处理图片"
- //create.innerText = "生成图片"
- //handle.onclick = function () {
- // let imgData = context.getImageData(0, 0, canvas.width, canvas.height)
- // let average = 0
- // //// 灰度处理
- // //for (var i = 0; i < imgData.data.length; i += 4) {
- // // average = Math.floor((imgData.data[i] + imgData.data[i + 1] + imgData.data[i + 2]) / 3); //将红、绿、蓝色值求平均值后得到灰度值
- // // imgData.data[i] = imgData.data[i + 1] = imgData.data[i + 2] = average; //将每个像素点的色值重写
- // // //matrix.setItem(i, 1, 125)
- // // //console.log(imgData.data[i])
- // // //matrix.setIndex(i / 4, imgData.data[i])
- // //}
- // //context.putImageData(imgData, 0, 0); //将处理后的图像数据重写至Canvas画布,此时画布中图像变为黑白色
- //};
- //create.onclick = function () { // 单击“生成图片”按钮,导出图片
- // var imgSrc = canvas.toDataURL(); //获取图片的DataURL
- // var newImg = new Image();
- // var result = document.createElement("div");
- // document.body.appendChild(result)
- // newImg.src = imgSrc; //将图片路径赋值给src
- // result.innerHTML = '';
- // result.appendChild(newImg);
- // //matrix.setItem(2, 0, 125)
- //};
//获取图片数据对象
let imgData = context.getImageData(0, 0, canvas.width, canvas.height)
@@ -62,78 +32,10 @@ image.onload = function () {
}
context.putImageData(imgData, 0, 0);
- //// 10 层滤波器
- //for (let i = 0; i < 10; i++) {
- // context.putImageData(convolutionMatrix(imgData, [
- // //-1, -1, 0,
- // //-1, 1, 1,
- // //0, 1, 1,
- // -2, -1, 0,
- // 1, -1, 1,
- // 8, 0, -4
- // ]), 0, 0)
- //}
-
// 将图像展示到矩阵中
for (var i = 0; i < imgData.data.length && i < 4096; i += 4) {
matrix.setItem(i / 4, 0, imgData.data[i])
}
-
- //let ctx = this
- //for (var i = 0; i < imgData.data.length; i += 4) {
- // imgData.data[i + 1] = 128
- // imgData.data[i + 2] = 128
- //}
- //context.putImageData(imgData, 0, 0);
-
- // /*
- // * 参数中的 kernel 就是卷积核方阵,不过顺着排列成了一个九位的数组
- // * 像是这样 [-1, -1, -1, -1, 8, -1, -1, -1, -1]
- // * offset 对RGBA数值直接增加,表现为提高亮度
- // * 下面的for循环
- // * y 代表行,x 代表列,c 代表RGBA
- // */
- //convolutionMatrix(input, kernel, offset = 0) {
- // let ctx = this.outputCtx
- // let output = ctx.createImageData(input)
- // let w = input.width,
- // h = input.height
- // let iD = input.data,
- // oD = output.data
- // for (let y = 1; y < h - 1; y += 1) {
- // for (let x = 1; x < w - 1; x += 1) {
- // for (let c = 0; c < 3; c += 1) {
- // let i = (y * w + x) * 4 + c
- // oD[i] =
- // offset +
- // (kernel[0] * iD[i - w * 4 - 4] +
- // kernel[1] * iD[i - w * 4] +
- // kernel[2] * iD[i - w * 4 + 4] +
- // kernel[3] * iD[i - 4] +
- // kernel[4] * iD[i] +
- // kernel[5] * iD[i + 4] +
- // kernel[6] * iD[i + w * 4 - 4] +
- // kernel[7] * iD[i + w * 4] +
- // kernel[8] * iD[i + w * 4 + 4]) /
- // this.divisor
- // }
- // oD[(y * w + x) * 4 + 3] = 255
- // }
- // }
- // ctx.putImageData(output, 0, 0)
- //}
-
-
-};
+}
document.body.appendChild(canvas)
-
-// 第一层输入层数量固定 32*32
-// 通过 滤波器 保留特征, 到输出合并层时,
-// 网络深度有限, 因而特征规模有限(但非常大)
-// 如何作关键特征映射?
-// 1. 存储常见特征, 如果符合, 滤波器将一组特征保留, 因而最后一层滤波器输出结果就是// 卷积结果为激活值, 算子为特征
-// 2. 输入一张图像, 设定此图像输出结果
-// 3. 输入另一张图, 设定此图像输出结果
-
-// 4. 输入另一张图, 排除所有不同激活的
diff --git a/package.json b/package.json
index ff548b3..d7fd934 100644
--- a/package.json
+++ b/package.json
@@ -3,19 +3,18 @@
"version": "1.0.0",
"description": "你的智慧分身(也许",
"main": "index.js",
+ "type": "module",
"scripts": {
"dev": "vite",
"build": "vite build",
- "preview": "vite preview",
- "start": "node server/index.js"
+ "preview": "vite preview"
},
"devDependencies": {
"vite": "^2.6.4"
},
"dependencies": {
"frappe-charts": "^1.6.2",
- "neataptic": "^1.4.7",
- "p5": "^1.4.0"
+ "neataptic": "^1.4.7"
},
"repository": {
"type": "git",
diff --git a/server/index.js b/server/index.js
deleted file mode 100644
index 20693f0..0000000
--- a/server/index.js
+++ /dev/null
@@ -1,35 +0,0 @@
-'use strict'
-
-// 规则
-// 1. 持续运行
-// 2. 周期回归
-// 3. 锚点小模型
-// 4. 基础规律模型
-
-async function thinking(x, n = 0) {
- if (x === 'x') return 'xD'
- if (n > 1024) return x + 'De'
- return await thinking(x, n + 1)
-}
-
-async function main(tasks = []) {
- while (true) {
- const task = tasks.pop() // 取一个任务(后进先出)
- // 执行任务(了解任务目标, 前提是认知目标和其宏观原理)
- // 寻找方法(了解寻找方法的原理, 以及方法的优劣分辨)
- // 尝试解法(分支扩展拟合, 或全局拟合)
- // 执行一次thinking
- //await thinking('x')
- // 内存低于1GB时,终止进程
- if (process.memoryUsage().rss > 1024 * 1024 * 1024) {
- console.log('内存不足,进程终止')
- process.exit()
- }
- // 每秒一次打印当前进程占用的内存
- await new Promise((resolve) => setTimeout(resolve, 100))
- const used = process.memoryUsage().heapUsed / 1024 / 1024
- console.log(`内存使用 ${Math.round(used * 100) / 100} MB`)
- }
-}
-
-main()
diff --git a/tools/convolutionMatrix.js b/tools/convolutionMatrix.js
deleted file mode 100644
index facc31c..0000000
--- a/tools/convolutionMatrix.js
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * 参数中的 kernel 就是卷积核方阵,不过顺着排列成了一个九位的数组
- * 像是这样 [-1, -1, -1, -1, 8, -1, -1, -1, -1]
- * offset 对RGBA数值直接增加,表现为提高亮度
- * 下面的for循环
- * y 代表行,x 代表列,c 代表RGBA
- */
-
-export default function (image, kernel, offset = 0) {
- let { width, height, data } = image
- for (let y = 1; y < height - 1; y += 1) {
- for (let x = 1; x < width - 1; x += 1) {
- for (let c = 0; c < 3; c += 1) {
- let i = (y * width + x) * 4 + c
- data[i] =
- offset +
- (
- kernel[0] * data[i - width * 4 - 4] +
- kernel[1] * data[i - width * 4] +
- kernel[2] * data[i - width * 4 + 4] +
- kernel[3] * data[i - 4] +
- kernel[4] * data[i] +
- kernel[5] * data[i + 4] +
- kernel[6] * data[i + width * 4 - 4] +
- kernel[7] * data[i + width * 4] +
- kernel[8] * data[i + width * 4 + 4]
- ) / 1
- }
- data[(y * width + x) * 4 + 3] = 255
- }
- }
- return image
-}
-
-// 卷积核
-
-// 全连接层, 输入全部特征队列, 输入网络深度
-function 全连接(arr, deep = 1) {
- let list = []
- for (let i = 0; i < arr.length; i++) {
- list.push(arr[i])
- }
-
- for (let i = 0; i < deep; i++) {
-
- }
-}
\ No newline at end of file
diff --git a/widgets/matrix.js b/widgets/matrix.js
index 33ec5b1..6ec8503 100644
--- a/widgets/matrix.js
+++ b/widgets/matrix.js
@@ -23,9 +23,6 @@ export default class {
this.element.appendChild(el)
}
}
- //HTMLElement.prototype.__defineGetter__("currentStyle", function () {
- // return this.ownerDocument.defaultView.getComputedStyle(this, null);
- //});
}
setItem(x, y, value) {
let color = `rgba(${value}, ${value}, ${value}, .8)`