此篇幅主要记录学习OCR的过程经历
OCR初学习(一)
未命名
¶threshold(算子)
¶名字
threshold
— 使用全局阈值分割图像。
¶签名
threshold(Image : Region : MinGray, MaxGray : )
¶描述
threshold
从输入图像中选择灰度值 g 满足以下条件的像素:
满足条件的图像的所有点都作为一个区域返回。如果传递了多个灰度值间隔(元组MinGray
和MaxGray
),则为每个间隔返回一个单独的区域。对于矢量场图像,阈值不应用于灰度值,而是应用于矢量的长度。
¶注意力
对于整数类型的输入图像,浮点值MinGray
和MaxGray
被截断。
¶执行信息
- 多线程类型:重入(与非独占运算符并行运行)。
- 多线程范围:全局(可以从任何线程调用)。
- 在元组级别自动并行化。
- 在内部数据级别自动并行化。
¶参数
Image
(input_object)单通道利马吉(-数组) 对象→
(字节 / 方向 / 循环 / 整数1 / 整数2 / uint2 / int4 / int8 / 实数 / vector_field)
输入图像。
Region
(output_object)区域(-数组) 对象→
分段区域。
MinGray
(input_control)数字(-数组)→
(实数/整数)
灰度值的阈值较低。
**默认值:**128.0
**建议值:**0.0、10.0、30.0、64.0、128.0、200.0、220.0、255.0
MaxGray
(input_control)数字(-数组)→
(实数/整数)
灰度值的上限阈值。
**默认值:**255.0
**建议值:**0.0、10.0、30.0、64.0、128.0、200.0、220.0、255.0
限制:MaxGray >= MinGray
¶示例(软件开发)
1 | read_image(Image,'fabrik') |
¶复杂性
设 A 为输入区域的面积。则运行时复杂度为 O(A)。
¶结果
threshold
如果所有参数都正确,则返回 2 (H_MSG_TRUE)。有关输入图像和输出区域的行为可以通过设置标志的值来确定*“no_object_result”,“empty_region_result”和“store_empty_region”*跟set_system
.如有必要,将引发异常。
¶可能的前身
1 | histo_to_thresh`, , , , , ,`min_max_gray``sobel_amp``binomial_filter``gauss_filter``reduce_domain``fill_interlace |
¶可能的继任者
1 | connection`, , , , , , ,`dilation1``erosion1``opening``closing``rank_region``shape_trans``skeleton |
¶选择
1 | class_2dim_sup`, , , , , ,`hysteresis_threshold``dyn_threshold``binary_threshold``char_threshold``auto_threshold``dual_threshold |
¶另请参见
1 | zero_crossing`, ,`background_seg``regiongrowing |
¶模块
基础
C# 读写文件时文件正由另一进程使用,因此该进程无法访问该文件
在使用Json序列化到本地文件时出现读写文件时文件正由另一进程使用,因此该进程无法访问该文件
具体代码实现如下:
1 | //保存Json |
序列化方法如下:
1 | ///<summary> |
经分析可能是由于 File.Create(path);
引起的文件进程占用。
代码优化:
1 | public static void SerializeJson<T>(this string path, T value) |
C# EF codefirst 迁移 Migrations问题记录
注1: 由于时间久远,之前的旧代码要求新增功能,需要升级,而之前的数据库不能放弃,想直接迁移到新电脑上直接使用
注2:因为长时间未使用EF codefirst相关操作,为了方便问题追溯,以此来记录此次碰到的各种问题
此次迁移的指令操作全部都在VS Studio 2022中的程序包管理器控制台中操作
Migration的命令如下:
1 | Enable-Migrations -Force |
1 | Add-Migration |
1 | Update-Databse -Verbose |
¶1 启动Migrations
如果是初始启动,且当前没有存在旧有的数据库,直接使用 Enable-Migrations
进行 启用migration用来初始化数据库;
如果存在旧有的数据库,则需要使用 Enable-Migrations -Force
来定位数据库的位置;
¶2 迁移Migrations
使用 Add-Migration
+ 标签来标记数据库的记录;
¶3 更新到数据库
使用 Update-Databse
进行数据库更新;
操作过程中遇到问题:
¶SQL Server问题汇总:
- error: 26 - 定位指定的服务器/实例时出错 (Microsoft SQL Server,错误: -1)
分析原因:
Target database is: ‘*****
’ (DataSource: .\\
SQLEXPRESS, Provider: System.Data.SqlClient, Origin: Configuration).
经断点调试发现:以下位置代码中的连接字符串
1 | public HiContext() : base("Hi.Scanner") |
与下面的字符串不符
1 | <connectionStrings> |
改正后,出现以下问题:
Target database is: ‘Hi.Scanner’ (DataSource: (localdb)\\
ProjectV13, Provider: System.Data.SqlClient, Origin: Configuration).
System.Data.SqlClient.SqlException (0x80131904):
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。(provider: SQL Network Interfaces, error: 50 - 发生了 Local Database Runtime 错误。指定的 LocalDB 实例名称无效。)
Hexo美化
欢迎使用Hexo
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
¶快速入门
¶创建一个新帖子
1 | $ hexo new "My New Post" |
More info: Writing
¶运行服务器
1 | $ hexo server or $ hexo s |
More info: Server
¶生成静态文件
1 | $ hexo generate or $ hexo g |
More info: Generating
¶部署到远程站点
1 | $ hexo deploy or $ hexo d |
More info: Deployment