diff --git a/docx/CHANGELOG.md b/docx/CHANGELOG.md
index 2166165..1e8f0fb 100644
--- a/docx/CHANGELOG.md
+++ b/docx/CHANGELOG.md
@@ -1,5 +1,10 @@
-# [0.28](https://github.com/shelllet/winui/compare/main...dev) (2023-09-xx)
+# [0.28](https://github.com/shelllet/winui/compare/main...dev) (2023-09-23)
### Changed:
+1. 优化图像处理相关动作。
+2. 更新相应的注册机制。
+
+### 备注
+1. 原购买注册版本的用户,需要更新至当前版本,重新注册。
## [0.27](https://github.com/shelllet/winui/compare/main...dev) (2023-09-02)
### Changed:
diff --git a/docx/_sidebar.md b/docx/_sidebar.md
index 26a953e..a0fab14 100644
--- a/docx/_sidebar.md
+++ b/docx/_sidebar.md
@@ -3,6 +3,7 @@
- 安装
- [直接安装](./intro/installation/installed_by_exe.md)
- [微软商店安装](./intro/installation/installed_by_msix.md)
+ - [安装问题](./intro/installation/questions.md)
- 流程
- [项目属性](./intro/workflow/property.md)
- [使用逻辑](./intro/workflow/logic.md)
@@ -76,12 +77,13 @@
- [颜色转换](./actions/image/CvtColor.md)
- [裁切图片](./actions/image/CropImage.md)
- [调整尺寸](./actions/image/ResizeImage.md)
- - [裁切图片](./actions/image/CenterCropImage.md)
+ - [中心裁切](./actions/image/CenterCropImage.md)
- [边缘检测](./actions/image/ImageCanny.md)
- - [阈值](./actions/image/ImageThreshold.md)
+ - [阈值操作](./actions/image/ImageThreshold.md)
- [颜色筛选](./actions/image/ImageInRange.md)
- [形态学操作](./actions/image/ImageMorphological.md)
- [自适应阈值](./actions/image/AdaptiveThreshold.md)
+ - [平滑/模糊](./actions/image/ImageBlur.md)
- [标记区域](./actions/image/ImageMarkROI.md)
- [标记相对区域](./actions/image/ImageMarkRelativeROI.md)
- 图像检测
@@ -271,4 +273,5 @@
- [WorkState](./enums/WorkState.md)
- [RelativePosition](./enums/RelativePosition.md)
- [MouseMessage](./enums/MouseMessage.md)
+ - [MorphologicalOperations](./enums/MorphologicalOperations.md)
- [Changelog](./CHANGELOG.md)
\ No newline at end of file
diff --git a/docx/actions/image/AdaptiveThreshold.md b/docx/actions/image/AdaptiveThreshold.md
index 316cc21..89c12e8 100644
--- a/docx/actions/image/AdaptiveThreshold.md
+++ b/docx/actions/image/AdaptiveThreshold.md
@@ -1,5 +1,13 @@
# 自适应阈值
-自适应阈值是针对较小的区域计算阈值,因此对于不同的区域会有不同的阈值。
+自适应阈值是将灰度图像转换为二值图像。是局部阈值,是针对较小的区域计算阈值,因此对于不同的区域会有不同的阈值。
+
+全局阈值并不是对所有图像都表现良好,特别是当图像在不同区域具有不同的光照条件时。在这种情况下,我们采用自适应阈值。
+
+自适应阈值处理每个像素的阈值是根据其周围的小区域单独确定的。因此,我们针对图像的不同区域获得不同的阈值,因此该方法在具有不同光照的图像上表现良好。
+
+通常在使用该动作前,将图像转换成灰度图像(单通道图像)。
+
+![action](./images/09.png ':size=90%')
## 子流程
> 不支持
@@ -7,14 +15,20 @@
## 运行参数
-* Image: 执行阈值操作的图像
-* Value: 填充像素值,范围(0 -255)
-* BlockSize: 确定邻域区域的大小,用来计算阈值
-* Type:要应用的阈值类型[ThresholdTypes](./enums/ThresholdTypes.md)
+* 图像
+> 执行阈值操作的图像
+* 值
+> 填充像素值,范围(0 -255)
+* 块
+ > 确定邻域区域的大小,用来计算阈值
+* 常数
+> 减去的一个常数。通常,它是正值,但也可能为零或负值。
+* 类型
+> 要应用的阈值类型, 参考[ThresholdTypes](./enums/ThresholdTypes.md)
## 输出
-> [`Image`](./types/Image.md)。
+> 经过阈值操作之后的图像 [`Image`](./types/Image.md)。
diff --git a/docx/actions/image/CenterCropImage.md b/docx/actions/image/CenterCropImage.md
index 5c9a028..2acbbb4 100644
--- a/docx/actions/image/CenterCropImage.md
+++ b/docx/actions/image/CenterCropImage.md
@@ -1,5 +1,7 @@
-# 裁切图片
-从中心位置开始裁切图片。
+# 中心裁切
+从图像中心位置按照指定的大小,裁切图片。
+
+![action](./images/04.png ':size=90%')
## 子流程
> 不支持
@@ -7,9 +9,10 @@
## 运行参数
-* Image 源图像
-* [Size](./types/Size.md): 截取图像大小
+* 源图像
+* 图像大小
+> 参考 [Size](./types/Size.md)
## 输出
diff --git a/docx/actions/image/CropImage.md b/docx/actions/image/CropImage.md
index fcbd9f6..9ee6bb3 100644
--- a/docx/actions/image/CropImage.md
+++ b/docx/actions/image/CropImage.md
@@ -1,7 +1,7 @@
# 裁切图片
-该动作可以在一张图片上选择一块区域,进行裁切。
+该动作可以根据设置的裁切区域,从源图中获取一部分图像。
-![action](./images/01.png ':size=90%')
+![action](./images/02.png ':size=90%')
## 子流程
@@ -9,8 +9,10 @@
## 运行参数
-* Image: 源图像。
-* [Roi](./types/Rect.md): 裁切的区域
+* 源图像
+
+* 裁切的区域
+> 参考:[Rect](./types/Rect.md)
## 输出裁切的子图像
diff --git a/docx/actions/image/CvtColor.md b/docx/actions/image/CvtColor.md
index 05a2cbe..9c49668 100644
--- a/docx/actions/image/CvtColor.md
+++ b/docx/actions/image/CvtColor.md
@@ -1,5 +1,8 @@
# 颜色转换
-对图像进行颜色转换
+对图像进行颜色转换,比如将彩色图转化为灰度图。转换为灰度图,可以提高图像算法的处理速度。
+
+![CvtColor](./images/01.png ':size=90%')
+
## 子流程
> 不支持
@@ -7,9 +10,10 @@
## 运行参数
-* Image: 源图像
-* [Color](./enums/ColorConversionCodes.md):颜色转换类型
-
+* 源图像
+
+* 转换代码
+> 可参考[ColorConversionCodes](./enums/ColorConversionCodes.md)
## 输出
@@ -23,4 +27,6 @@ import simple;
```
-## 示例
\ No newline at end of file
+## 资源
+
+示例:https://github.com/shelllet/WinUi/blob/main/image/CvtColor.simple
diff --git a/docx/actions/image/ImageBlur.md b/docx/actions/image/ImageBlur.md
index e0ec177..923b193 100644
--- a/docx/actions/image/ImageBlur.md
+++ b/docx/actions/image/ImageBlur.md
@@ -1,5 +1,11 @@
-# 模糊
-图像模糊
+# 平滑/模糊
+平滑和模糊是所有计算机视觉和图像处理中最重要的预处理步骤之一。通过在应用边缘检测或阈值处理等技术之前对图像进行平滑处理,我们能够减少高频内容的数量,例如噪声和边缘(即图像的“细节”)。
+
+虽然这听起来可能违反直觉,但通过减少图像中的细节,我们可以更轻松地找到我们感兴趣的对象。
+
+一般来说,建议从高斯模糊开始,并根据需要调整参数。虽然高斯模糊比简单的平均模糊稍慢(仅慢一小部分),但高斯模糊往往会给出更好的结果,尤其是在应用于自然图像时。
+
+![action](./images/12.png ':size=90%')
## 子流程
> 不支持
@@ -7,13 +13,23 @@
## 运行参数
-* Kernel: 内核大小,内核越大,图像看起来就越模糊。
+* 内核
+> 内核越大,图像看起来就越模糊。对于 *Bilateral*,忽略此参数。对于 *Gaussian*, 此值必须是大于 1 的奇数。
+* 直径
+> 此值定义像素邻域的直径。直径越大,模糊计算中包含的像素就越多。 该参数仅应用于 *Bilateral*。预设使用 5,数值越大运算的速度越慢。
-## 输出
+* 颜色标准差
+> 较大的值意味着在计算模糊时将考虑邻域中的更多颜色。 该参数仅应用于 *Bilateral*。
-
+* 空间标准差
+> 较大的值意味着距离中心像素直径较远的像素将影响模糊计算。 该参数仅应用于 *Bilateral*。
+>
+* 方法
+> 参考 [BlurOperation](./enums/BlurOperation.md)
+## 输出
+> 过滤后的图像。
## 脚本调用
diff --git a/docx/actions/image/ImageCanny.md b/docx/actions/image/ImageCanny.md
index bc508a5..738a9f0 100644
--- a/docx/actions/image/ImageCanny.md
+++ b/docx/actions/image/ImageCanny.md
@@ -1,5 +1,7 @@
# 边缘检测
-边缘检测
+边缘检测是将图像中的边缘提取出来,作为后续图像处理和应用的的一个重要环节。通常,我们所看到的图像都不是完美无缺的,而是包含许多噪声、干扰等,因此需要将这些噪声去除,只保留图像中的边缘信息。边缘检测的主要目的是提高图像的清晰度和对比度,从而更好地理解图像中的内容。
+
+![CvtColor](./images/05.png ':size=90%')
## 子流程
> 不支持
@@ -7,8 +9,10 @@
## 运行参数
-* Image:图像
-* Thresold: 阈值,用來區分 *strong edge* 和 *weak edge*,范围是 0 ~ 255。
+* 图像
+
+* 阈值
+ > 用來區分 *strong edge* 和 *weak edge*,范围是 0 ~ 255。
## 输出
diff --git a/docx/actions/image/ImageInRange.md b/docx/actions/image/ImageInRange.md
index 5a9e6a5..169b9b5 100644
--- a/docx/actions/image/ImageInRange.md
+++ b/docx/actions/image/ImageInRange.md
@@ -1,5 +1,7 @@
# 颜色筛选
-指定一个色彩范围,抓取影像中符合色彩范围内的颜色,透过这个方式,就可以筛选出影像中的特定颜色物件。
+指定一个色彩范围,保留图像中符合色彩范围内的颜色,透过这个方式,就可以筛选出图像中的特定颜色物件。
+
+![action](./images/07.png ':size=90%')
## 子流程
> 不支持
@@ -7,9 +9,13 @@
## 运行参数
-* Image:输入图像
-* Lower:色彩范围最低数值
-* Upper:色彩范围最高数值
+* 图像
+> 单通道图像,或者3通道 *RGB* 彩色图像,对于彩色图像通常将图像由 *RGB* 转换成 *HSV* 颜色空间,再进行颜色筛选。
+* 最小值
+ > 色彩范围最低数值,低于该值的颜色值会被置为 *0*, 即会被去除。
+
+* 最大值
+ > 色彩范围最高数值, 高于该值的颜色值会被置为 *0*,即会被去除。
## 输出
@@ -24,4 +30,9 @@ import simple;
```
-## 示例
\ No newline at end of file
+## 示例
+
+
+!> 对于 *RGB* 颜色空间的图像,最小值中的 (*R* *G* *B*) 必须分别小于最大值中的 (*R* *G* *B*),
+
+!> 对于 *HSV* 颜色空间的图像,最小值中的 (*H* *S* *V*) 必须分别小于最大值中的 (*H* *S* *V*),
\ No newline at end of file
diff --git a/docx/actions/image/ImageMarkROI.md b/docx/actions/image/ImageMarkROI.md
index 27bd123..a4e8db3 100644
--- a/docx/actions/image/ImageMarkROI.md
+++ b/docx/actions/image/ImageMarkROI.md
@@ -1,6 +1,8 @@
# 标记区域
-标记图片感兴趣的区域,比如在找图时,只从该区域查找图片。
+标记图片感兴趣的区域,比如在找图时,只从该区域查找图片,可以加快查图速度。这个动作不改变图像尺寸。
+
+![action](./images/10.png ':size=90%')
## 权限
> 无要求
@@ -11,15 +13,16 @@
## 运行参数
-* image:输入图像
-* rect: 矩形区域
+* 图像
+> 待处理的图像
+* 区域
+> 需要操作的区域
## 输出
-
-
+> 标记后的图像,图像大小保持不变。
## 脚本调用
diff --git a/docx/actions/image/ImageMarkRelativeROI.md b/docx/actions/image/ImageMarkRelativeROI.md
index a5e7d21..e465226 100644
--- a/docx/actions/image/ImageMarkRelativeROI.md
+++ b/docx/actions/image/ImageMarkRelativeROI.md
@@ -1,6 +1,8 @@
# 标记相对区域
-根据相对位置,标记图片感兴趣的区域,比如在找图时,只从该区域查找图片。
+根据相对位置,标记图片感兴趣的区域,比如在找图时,只从该区域查找图片,可以加快查图速度。
+
+![action](./images/11.png ':size=90%')
## 权限
> 无要求
@@ -10,16 +12,25 @@
## 运行参数
-* [image](./types/Image.md):输入图像
-* [relative](./enums/RelativePosition.md):相对位置,即坐标原点位置。根据偏移坐标和尺寸来设置一个感兴趣的区域矩形
-* [offset](./types/Point.md):偏移坐标,
-* [size](./types/Size.md):尺寸
+* 图像
+ > 输入图像
+* 相对位置
+> 坐标原点位置。参考 [RelativePosition](./enums/RelativePosition.md),不同的位置,坐标轴方向不一样。参考下图
-## 输出
+![xy](../window/images/xy.png ':size=40%')
+
+* 偏移
+> 原点偏移量(坐标系参考上图)。坐标轴(x, y)方向参考上面草图。如果选择 *Center*,原点对应图像的中心位置,*TopLeft* 对应图像的左上角,*TopRight* 对应图像的右上角,*BottomLeft* 对应图像的左下角,*BottomRight* 对应图像的右下角。
-
+* 尺寸
+> 标记区域图像的大小, 参考[Size](./types/Size.md)。如果相对位置选择 *中心位置*, 原点坐标为图像的中心坐标。其它情况,原点为图像的左上角坐标。
+
+
+## 输出
+> 标记后的图像,图像大小保持不变。
+
## 脚本调用
diff --git a/docx/actions/image/ImageMorphological.md b/docx/actions/image/ImageMorphological.md
index 799dfbd..352f3ff 100644
--- a/docx/actions/image/ImageMorphological.md
+++ b/docx/actions/image/ImageMorphological.md
@@ -2,17 +2,20 @@
形态学操作是一组基于形状处理图像的操作。他们将结构化元素应用于输入图像并生成输出图像。
-最基本的形态学操作有两种:侵蚀和膨胀
+最基本的形态学操作有两种:侵蚀和膨胀
-侵蚀作用:
+1. 侵蚀作用:
-* 侵蚀掉前景对象的边界
-* 用于减少图像的特征。
+ * 侵蚀掉前景对象的边界
+ * 用于减少图像的特征。
-膨胀的作用:
+2. 膨胀的作用:
-* 增加物体面积
-* 用于强调特征
+ * 增加物体面积
+ * 用于强调特征
+
+
+![action](./images/08.png ':size=90%')
## 子流程
> 不支持
@@ -20,9 +23,13 @@
## 运行参数
-* Image:输入图像
-* Kernel:卷积核大小
-* Operation:操作, 腐蚀或者膨胀
+* 图像
+> 待处理图像
+* 内核
+> 卷积核大小。 可以通过预览,调整此参数为合适的值。
+
+* 操作
+ > 腐蚀或者膨胀, 参考 [MorphologicalOperations](./enums/MorphologicalOperations.md)
diff --git a/docx/actions/image/ImageThreshold.md b/docx/actions/image/ImageThreshold.md
index 096ccbe..979595c 100644
--- a/docx/actions/image/ImageThreshold.md
+++ b/docx/actions/image/ImageThreshold.md
@@ -1,7 +1,13 @@
-# 阈值
-该动作可以对图像进行阈值化操作。在该阈值操作中,值大于指定阈值的像素被分配一个标准值。该阈值操作是全局的,即图像中的所有像素都使用相同的阈值。
+# 阈值操作
+对图像进行阈值操作,可以将灰度图像转换为二值图像,是全局操作。该阈值操作是全局的,即图像中的所有像素都使用相同的阈值。
-![action](./images/03.png ':size=90%')
+可用于多通道图像(如 *RGB*图像,操作后的图像仍然是 *RGB* 三通道图像),通常在使用该动作前,将图像转换成灰度图像(单通道图像)。
+
+在该阈值操作中,值大于指定阈值的像素被分配一个标准值。
+
+该动作主要用来进行噪声、干扰像素过滤。
+
+![action](./images/06.png ':size=90%')
## 子流程
@@ -9,13 +15,17 @@
## 运行参数
-* Image: 要执行二值化操作的图像。
-* Threshold:阈值。范围(0 - 255),低于和高于阈值的像素值将相应改变。如果`Type`选择`BINARY`。低于该值的。像素被置为黑色。高于该阈值的, 则填充为`Value` 表示的颜色, 如果type选择`BINARY_INV`,则反之。
-* Value:填充像素值。范围(0 -255)
-* Type:要应用的阈值类型[ThresholdTypes](./enums/ThresholdTypes.md)
+* 图像:
+ > 要执行阈值操作的图像。
+* 阈值
+ > 范围(0 - 255),低于和高于阈值的像素值将相应改变。如果操作方式选择`BINARY`。低于该值的。像素被置为黑色。高于该阈值的, 则填充为所设置的颜色, 如果操作类型选择`BINARY_INV`,则反之。
+* 值
+ > 填充像素值。范围(0 -255)
+* 类型
+ > 参考[ThresholdTypes](./enums/ThresholdTypes.md)
## 输出
-> [`Image`](./types/Image.md)。
+> 阈值操作后的图像。参考[`Image`](./types/Image.md)。
## 脚本调用
diff --git a/docx/actions/image/ResizeImage.md b/docx/actions/image/ResizeImage.md
index efd3786..93235bd 100644
--- a/docx/actions/image/ResizeImage.md
+++ b/docx/actions/image/ResizeImage.md
@@ -1,5 +1,7 @@
# 调整尺寸
-调整尺寸
+调整图像尺寸,该动作会根据所设置的尺寸,缩放图像。如果尺寸比源图像大,会放大图像,如果 尺寸比源图像小则会缩小图像。
+
+![action](./images/03.png ':size=90%')
## 子流程
> 不支持
@@ -7,13 +9,14 @@
## 运行参数
-* Image:图像
-* Size:尺寸
+* 图像
+
+* 尺寸
## 输出
-
+> 调整尺寸后的图像
## 脚本调用
diff --git a/docx/actions/image/images/01.png b/docx/actions/image/images/01.png
new file mode 100644
index 0000000..56e688c
Binary files /dev/null and b/docx/actions/image/images/01.png differ
diff --git a/docx/actions/image/images/02.png b/docx/actions/image/images/02.png
new file mode 100644
index 0000000..f49ace1
Binary files /dev/null and b/docx/actions/image/images/02.png differ
diff --git a/docx/actions/image/images/03.png b/docx/actions/image/images/03.png
new file mode 100644
index 0000000..c667297
Binary files /dev/null and b/docx/actions/image/images/03.png differ
diff --git a/docx/actions/image/images/04.png b/docx/actions/image/images/04.png
new file mode 100644
index 0000000..fd2cc53
Binary files /dev/null and b/docx/actions/image/images/04.png differ
diff --git a/docx/actions/image/images/05.png b/docx/actions/image/images/05.png
new file mode 100644
index 0000000..a7c6f2c
Binary files /dev/null and b/docx/actions/image/images/05.png differ
diff --git a/docx/actions/image/images/06.png b/docx/actions/image/images/06.png
new file mode 100644
index 0000000..6480c7c
Binary files /dev/null and b/docx/actions/image/images/06.png differ
diff --git a/docx/actions/image/images/07.png b/docx/actions/image/images/07.png
new file mode 100644
index 0000000..530222e
Binary files /dev/null and b/docx/actions/image/images/07.png differ
diff --git a/docx/actions/image/images/08.png b/docx/actions/image/images/08.png
new file mode 100644
index 0000000..31e521b
Binary files /dev/null and b/docx/actions/image/images/08.png differ
diff --git a/docx/actions/image/images/09.png b/docx/actions/image/images/09.png
new file mode 100644
index 0000000..2842927
Binary files /dev/null and b/docx/actions/image/images/09.png differ
diff --git a/docx/actions/image/images/10.png b/docx/actions/image/images/10.png
new file mode 100644
index 0000000..4386cb9
Binary files /dev/null and b/docx/actions/image/images/10.png differ
diff --git a/docx/actions/image/images/11.png b/docx/actions/image/images/11.png
new file mode 100644
index 0000000..1e7ddd4
Binary files /dev/null and b/docx/actions/image/images/11.png differ
diff --git a/docx/actions/image/images/12.png b/docx/actions/image/images/12.png
new file mode 100644
index 0000000..fcbe8a2
Binary files /dev/null and b/docx/actions/image/images/12.png differ
diff --git a/docx/actions/window/EnumWindows.md b/docx/actions/window/EnumWindows.md
index 4856b68..8c3a15f 100644
--- a/docx/actions/window/EnumWindows.md
+++ b/docx/actions/window/EnumWindows.md
@@ -29,3 +29,7 @@ import simple;
## 资源
示例:https://github.com/shelllet/WinUi/blob/main/window/EnumWindows.simple
+
+
+
+
diff --git a/docx/actions/window/ForegroundWindow.md b/docx/actions/window/ForegroundWindow.md
index a65aeb3..45da2c8 100644
--- a/docx/actions/window/ForegroundWindow.md
+++ b/docx/actions/window/ForegroundWindow.md
@@ -28,5 +28,8 @@ import simple;
示例:https://github.com/shelllet/WinUi/blob/main/window/ForegroundWindow.simple
+
+
+
!> 不无前置最小化的窗口
\ No newline at end of file
diff --git a/docx/actions/window/MessageBox.md b/docx/actions/window/MessageBox.md
index 3e44b81..4f4dd59 100644
--- a/docx/actions/window/MessageBox.md
+++ b/docx/actions/window/MessageBox.md
@@ -34,4 +34,9 @@ Wnd.MessageBox('caption', 'msg', flags)
示例:https://github.com/shelllet/WinUi/blob/main/window/MessageBox.simple
+
+
+
+
+
!> 消息框关闭之后,才会继续执行后续动作。
\ No newline at end of file
diff --git a/docx/actions/window/PositionWindow.md b/docx/actions/window/PositionWindow.md
index 08baa6a..4fbe362 100644
--- a/docx/actions/window/PositionWindow.md
+++ b/docx/actions/window/PositionWindow.md
@@ -32,6 +32,8 @@ import simple;
示例:https://github.com/shelllet/WinUi/blob/main/window/PositionWindow.simple
+
+
!> 对于 *UWP* 应用解决办法参考:https://github.com/microsoft/Xaml-Islands-Samples/blob/master/Samples/Win32/SampleCppApp/ReadMe.md
\ No newline at end of file
diff --git a/docx/actions/window/WinRun.md b/docx/actions/window/WinRun.md
index 7eb3a9a..cac36b6 100644
--- a/docx/actions/window/WinRun.md
+++ b/docx/actions/window/WinRun.md
@@ -27,5 +27,9 @@ import simple;
示例:https://github.com/shelllet/WinUi/blob/main/window/WinRun.simple
+
+
+
+
* 操作系统中的运行框
> ![操作系统中的运行框](./images/01.png ':size=40%')
diff --git a/docx/actions/window/WindowAncestor.md b/docx/actions/window/WindowAncestor.md
index e949e58..61d1a02 100644
--- a/docx/actions/window/WindowAncestor.md
+++ b/docx/actions/window/WindowAncestor.md
@@ -29,3 +29,7 @@ import simple;
### 资源
示例:https://github.com/shelllet/WinUi/blob/main/window/WindowAncestor.simple
+
+
+
+
\ No newline at end of file
diff --git a/docx/actions/window/WindowCaption.md b/docx/actions/window/WindowCaption.md
index 5f32d7b..dd03e74 100644
--- a/docx/actions/window/WindowCaption.md
+++ b/docx/actions/window/WindowCaption.md
@@ -30,3 +30,7 @@ import simple;
## 资源
示例:https://github.com/shelllet/WinUi/blob/main/window/WindowCaption.simple
+
+
+
+
\ No newline at end of file
diff --git a/docx/actions/window/WindowPoint.md b/docx/actions/window/WindowPoint.md
index 09abc44..1ef1662 100644
--- a/docx/actions/window/WindowPoint.md
+++ b/docx/actions/window/WindowPoint.md
@@ -15,12 +15,12 @@
* [window](./types/Wnd.md)
> 窗口
* [relative](./enums/RelativePosition.md)
- > 相对位置,(X,Y) 方向根据不同的位置方向有所不同,参考下图。
+ > 相对位置,坐标轴 (X,Y) 方向根据不同的位置方向有所不同,参考下图。
- ![xy](./images/14.png ':size=40%')
+ ![xy](./images/xy.png ':size=40%')
* [offset](./types/Point.md)
- > 偏移坐标,以相对位置为坐标原点(坐标系参考上图),根据偏移坐标来计算最终坐标。
+ > 原点偏移量(坐标系参考上图)。坐标轴(x, y)方向参考上面草图。
@@ -39,3 +39,7 @@ import simple;
## 资源
示例:https://github.com/shelllet/WinUi/blob/main/window/WindowPoint.simple
+
+
+
+
\ No newline at end of file
diff --git a/docx/actions/window/WindowSize.md b/docx/actions/window/WindowSize.md
index 8a40723..ce00bc0 100644
--- a/docx/actions/window/WindowSize.md
+++ b/docx/actions/window/WindowSize.md
@@ -29,3 +29,7 @@ import simple;
### 资源
示例:https://github.com/shelllet/WinUi/blob/main/window/WindowSize.simple
+
+
+
+
\ No newline at end of file
diff --git a/docx/actions/window/WindowVisible.md b/docx/actions/window/WindowVisible.md
index 46b670f..60b155e 100644
--- a/docx/actions/window/WindowVisible.md
+++ b/docx/actions/window/WindowVisible.md
@@ -29,3 +29,7 @@ import simple;
### 资源
示例:https://github.com/shelllet/WinUi/blob/main/window/WindowVisible.simple
+
+
+
+
diff --git a/docx/actions/window/WindowXy.md b/docx/actions/window/WindowXy.md
index 661e7af..5e250ed 100644
--- a/docx/actions/window/WindowXy.md
+++ b/docx/actions/window/WindowXy.md
@@ -29,3 +29,7 @@ import simple;
### 资源
示例:https://github.com/shelllet/WinUi/blob/main/window/WindowXy.simple
+
+
+
+
\ No newline at end of file
diff --git a/docx/actions/window/images/14.png b/docx/actions/window/images/14.png
deleted file mode 100644
index bdf226e..0000000
Binary files a/docx/actions/window/images/14.png and /dev/null differ
diff --git a/docx/actions/window/images/xy.png b/docx/actions/window/images/xy.png
new file mode 100644
index 0000000..536d49f
Binary files /dev/null and b/docx/actions/window/images/xy.png differ
diff --git a/docx/enums/BlurOperation.md b/docx/enums/BlurOperation.md
new file mode 100644
index 0000000..9b74258
--- /dev/null
+++ b/docx/enums/BlurOperation.md
@@ -0,0 +1,10 @@
+# BlurOperation
+
+* Simple
+> 简单模糊(平均值),获取中心像素周围的像素区域,将所有这些像素平均在一起,然后用平均值替换中心像素。
+* Gaussian
+> 加权高斯模糊,使用加权平均值,其中更接近中心像素的邻域像素对平均值贡献更多的 *权重*。高斯平滑用于去除近似服从高斯分布的噪声。与简单模糊相比,基于此权重,我们将能够保留图像中更多的边缘。使用此方法,图像不会那么模糊,但会更加 *自然模糊*。
+* Median
+> 中值滤波,此方法在消除椒盐噪声时最为有效。这种类型的噪音正如它听起来的那样:想象一下拍一张照片,把它放在餐桌上,然后在上面撒上盐和胡椒粉。使用中值模糊方法,您可以从图像中去除盐和胡椒。
+* Bilateral
+> 双边模糊,模糊方法的目的是减少图像中的噪声和细节。然而,作为一个副作用,我们往往会丢失图像的边缘。为了在保持边缘的同时减少噪音,我们可以使用双边模糊。这种方法的最大缺点是它比平均、高斯和中值模糊方法慢得多。
\ No newline at end of file
diff --git a/docx/enums/ColorConversionCodes.md b/docx/enums/ColorConversionCodes.md
index 1d0537e..08bb33f 100644
--- a/docx/enums/ColorConversionCodes.md
+++ b/docx/enums/ColorConversionCodes.md
@@ -1 +1,7 @@
-# ColorConversionCodes
\ No newline at end of file
+# ColorConversionCodes
+
+* COLOR_BGR2BGRA
+* COLOR_BGRA2BGR
+* COLOR_BGR2GRAY
+* COLOR_RGB2GRAY
+* COLOR_RGBA2GRAY
\ No newline at end of file
diff --git a/docx/enums/MorphologicalOperations.md b/docx/enums/MorphologicalOperations.md
new file mode 100644
index 0000000..11dc193
--- /dev/null
+++ b/docx/enums/MorphologicalOperations.md
@@ -0,0 +1,13 @@
+# MorphologicalOperations
+
+* Erosion
+> 侵蚀,根据内核的大小,边界附近的所有像素都将被丢弃。因此,前景物体的厚度或尺寸会减小,或者图像中的白色区域会减小。它对于消除小的白噪声、分离两个连接的对象等很有用。通常进行侵蚀后的影像,黑色区域会扩张,白色区域会缩小。
+* Dilation
+> 膨胀,它与侵蚀正好相反,它增加了图像中的白色区域或前景物体的尺寸,对于连接物体的破损部分也很有用。通常进行膨胀后的影像,白色区域会扩张,黑色区域会缩小。
+
+* MorphOpen
+> 先应用腐蚀,然后应用膨胀!此操作对于消除噪声很有用。这是因为第一次腐蚀将删除原始图像中小于结构元素的任何形状,但也会缩小我们想要的形状。然后,膨胀将逆转收缩,但不会带回“噪音”。
+* MorphClose
+> 首先应用膨胀,然后应用腐蚀!此操作对于“关闭”我们想要的形状或前景中的孔非常有用。这是因为当我们第一次应用膨胀时,孔将被关闭,但主要形状会放大。然后侵蚀将逆转主要形状的扩大,因此闭合的效果实际上只是“闭合”孔。
+* MorphGradient
+> 这是图像的膨胀和腐蚀之间的区别,结果将看起来像对象的轮廓。
\ No newline at end of file
diff --git a/docx/enums/ThresholdTypes.md b/docx/enums/ThresholdTypes.md
index 4dc2083..86e6ace 100644
--- a/docx/enums/ThresholdTypes.md
+++ b/docx/enums/ThresholdTypes.md
@@ -1,4 +1,6 @@
# ThresholdTypes
-* `BINARY` : 如果像素强度大于设置的阈值,值设置为 255,否则设置为 0(黑色)
-* `BINARY_INV`:`BINARY` 的反转或相反情况
\ No newline at end of file
+* `BINARY`
+> 如果像素强度大于设置的阈值,值设置为 255,否则设置为 0(黑色)
+* `BINARY_INV`
+ > `BINARY` 的反转或相反情况
\ No newline at end of file
diff --git a/docx/intro/installation/images/01.png b/docx/intro/installation/images/01.png
new file mode 100644
index 0000000..49aa2e3
Binary files /dev/null and b/docx/intro/installation/images/01.png differ
diff --git a/docx/intro/installation/images/02.png b/docx/intro/installation/images/02.png
new file mode 100644
index 0000000..39874f4
Binary files /dev/null and b/docx/intro/installation/images/02.png differ
diff --git a/docx/intro/installation/images/05.png b/docx/intro/installation/images/05.png
new file mode 100644
index 0000000..dbe60b7
Binary files /dev/null and b/docx/intro/installation/images/05.png differ
diff --git a/docx/intro/installation/images/06.png b/docx/intro/installation/images/06.png
new file mode 100644
index 0000000..1584083
Binary files /dev/null and b/docx/intro/installation/images/06.png differ
diff --git a/docx/intro/installation/images/07.png b/docx/intro/installation/images/07.png
new file mode 100644
index 0000000..98c811e
Binary files /dev/null and b/docx/intro/installation/images/07.png differ
diff --git a/docx/intro/installation/images/08.png b/docx/intro/installation/images/08.png
new file mode 100644
index 0000000..f75e200
Binary files /dev/null and b/docx/intro/installation/images/08.png differ
diff --git a/docx/intro/installation/images/09.png b/docx/intro/installation/images/09.png
new file mode 100644
index 0000000..ae7960f
Binary files /dev/null and b/docx/intro/installation/images/09.png differ
diff --git a/docx/intro/installation/questions.md b/docx/intro/installation/questions.md
new file mode 100644
index 0000000..ffb8a3f
--- /dev/null
+++ b/docx/intro/installation/questions.md
@@ -0,0 +1,29 @@
+# 安装完后无法启动问题排查方法
+
+1. 按 Windows + R 打开运行框,输入 *eventvwr.msc* 打开事件日志。
+
+ ![img](./images/06.png ':size=40%')
+
+2. 双击 *Windows日志*,展开日志来源列表。
+
+ ![img](./images/02.png ':size=70%')
+
+3. 选择 *应用程序* 。
+
+ ![img](./images/05.png ':size=70%')
+
+4. 点击 *筛选当前日志...* , 或者在 *应用程序* 右键点击选择 *清除日志*,不略过 步骤 [4 ~ 5]。
+
+ ![img](./images/01.png ':size=70%')
+
+5. 输入 筛选条件 *Simple simple event source*,点击 *确定*。
+
+ ![img](./images/07.png ':size=60%')
+
+7. 在桌面右键点击 *WinUi++*, 使用 *管理员方身份运行*。
+
+ ![img](./images/08.png ':size=60%')
+
+8. 在事件查看器中,右键点击 *应用程序*,选择 *刷新*,查看日志详情。
+
+ ![img](./images/09.png ':size=60%')
\ No newline at end of file