计量物资登记系统的制作方法

文档序号:33648026发布日期:2023-03-29 05:41阅读:59来源:国知局
计量物资登记系统的制作方法

1.本发明涉及计量物资登记系统,属于仓库管理技术领域。


背景技术:

2.目前供电所对于计量出入库采取的是手机拍照后手工登记的方式。在需要跑到仓库领用物资时,还需要带着物资去办公室进行手工登记打印领用单。
3.这种方式存在较大的不便和低效率,需要提出改进方案来解决这个问题。。


技术实现要素:

4.本发明要解决的技术问题是:提供计量物资登记系统,以克服现有技术的不足。
5.本发明的技术方案是:计量物资登记系统,包括:
6.扫码模块,用于对设备资产编号的扫码读取;
7.表格生成模块,用于根据用户输入的信息,生成包含设备资产编号、领用人、领用时间信息的表格;
8.打印模块,用于接收迷你打印机的打印指令,并将表格发送给迷你打印机,实现一键打印功能;
9.输入模块,用于向计算模块输入外界信息及指令;
10.计算模块,所述计算模块与扫码模块、表格生成模块、打印模块和输入模块电连接。
11.具体地,所述扫码模块通过以下方法对设备资产编号进行扫码读取:
12.对图像进行预处理;
13.检测二维码图像中的定位模块,并确定其位置;
14.根据定位模块的位置,对图像进行透视变换,使得二维码图像变为正交视图;
15.识别二维码图像中的信息点,并将它们编码成一个矩阵;
16.对矩阵进行解码,得到设备资产编号。
17.具体地,所述对图像进行预处理的方法为:
18.图像灰度化:将彩色图像转换为灰度图像;
19.图像二值化:将灰度图像转换为二值图像;
20.去噪声:去除图像中的噪点;
21.图像膨胀腐蚀:用来去除图像中的干扰线条和其它杂项;
22.边缘检测:检测图像中的边缘和角点。
23.具体地,所述去噪声的方法如下:
24.将图像转换为频率域;
25.在频率域中分析噪声的特征,并使用低通滤波器来去除噪声;
26.使用低通滤波器对图像进行滤波,以去除噪声;
27.将滤波后的图像转换回时域,以获得去噪后的图像。
28.具体地,所述图像膨胀腐蚀包括以下步骤:
29.定义一个结构元,它是一个二维矩阵,用来定义操作的区域;
30.将结构元与图像的每一个像素重叠;
31.膨胀运算时,如果结构元中的像素与对应的图像像素有一个为1,则将该像素的值设为1,否则为0;
32.腐蚀运算时,如果结构元中的像素与对应的图像像素都为1,则将该像素的值设为1,否则为0;
33.重复上述步骤直至处理完图像的所有像素。
34.具体地,对图像进行预处理,包括去噪、灰度化;
35.使用滤波器对图像进行平滑,以消除噪声并使边缘更加清晰;
36.应用边缘检测算子对图像进行边缘检测;
37.对检测到的边缘进行后处理,以确定最终的边缘位置。
38.具体地,所述边缘检测算子为sobel、prewitt或canny算子。
39.具体地,对检测到的边缘进行后处理的方法包括包括非极大值抑制和连通域分析。
40.本发明的有益效果是:与现有技术相比,本发明通过扫码模块,能够快速读取设备资产编号;通过表格生成模块,能够根据用户输入的信息自动生成包含设备资产编号、领用人、领用时间信息的表格;通过打印模块,能够实现一键打印,方便快捷,通过输入模块能够有效接收外界信息和指令,并将其传递给计算模块;通过计算模块,能够将扫码模块、表格生成模块、打印模块和输入模块之间的信息进行有效地计算和处理。整个计量物资登记系统能够有效地解决手工登记、繁琐流程的问题,提高工作效率和便利性。。
附图说明
41.图1为本发明的电路连接框图。
具体实施方式
42.为了更好的理解上述技术方案,下面将结合说明书附图以及具体实施方式对上述技术方案进行详细说明。
43.实施实例1:
44.参考图1,计量物资登记系统,包括:扫码模块,用于对设备资产编号的扫码读取;表格生成模块,用于根据用户输入的信息,生成包含设备资产编号、领用人、领用时间信息的表格;打印模块,用于接收迷你打印机的打印指令,并将表格发送给迷你打印机,实现一键打印功能;输入模块,用于向计算模块输入外界信息及指令;计算模块,所述计算模块与扫码模块、表格生成模块、打印模块和输入模块电连接。
45.具体地,所述扫码模块通过以下方法对设备资产编号进行扫码读取:对图像进行预处理;检测二维码图像中的定位模块,并确定其位置;根据定位模块的位置,对图像进行透视变换,使得二维码图像变为正交视图;识别二维码图像中的信息点,并将它们编码成一个矩阵;对矩阵进行解码,得到设备资产编号。
46.以上步骤可通过以下代码实现:
47.def scan_asset_code(image):
48.#对图像进行预处理
49.preprocessed_image=preprocess_image(image)
50.#检测定位模块
51.location_module_position=detect_location_module(preprocessed_image)
52.#进行透视变换
53.orthogonal_view=apply_perspective_transform(preprocessed_image,location_module_position)
54.#识别信息点,并编码成矩阵
55.information_matrix=encode_information_points(orthogonal_view)
56.#解码矩阵,得到设备资产编号
57.asset_code=decode_matrix(information_matrix)
58.return asset_code
59.在这种实现中,scan_asset_code函数需要一个图像作为输入,并返回读取到的设备资产编号。具体的实现方式可能会有所不同,例如可能会使用不同的预处理方法或者不同的编码/解码算法。
60.通过这些步骤,扫码模块可以快速读取设备资产编号,并将其解码成可读的文本。
61.具体地,所述对图像进行预处理的方法为:
62.图像灰度化:将彩色图像转换为灰度图像;
63.图像二值化:将灰度图像转换为二值图像;
64.去噪声:去除图像中的噪点;
65.图像膨胀腐蚀:用来去除图像中的干扰线条和其它杂项;
66.边缘检测:检测图像中的边缘和角点。
67.图像预处理的技术效果是可以更好地识别图像中的信息,并去除干扰线条和噪点,以便于后续步骤对图像进行更准确的处理。
68.具体地,所述去噪声的方法如下:
69.将图像转换为频率域,这可以通过使用傅里叶变换或小波变换来实现;
70.在频率域中分析噪声的特征,并使用低通滤波器来去除噪声;
71.使用低通滤波器对图像进行滤波,以去除噪声,使得图像边缘更加清晰;
72.将滤波后的图像转换回时域,以获得去噪后的图像;
73.具体地,所述图像膨胀腐蚀包括以下步骤:定义一个结构元,它是一个二维矩阵,用来定义操作的区域;将结构元与图像的每一个像素重叠;膨胀运算时,如果结构元中的像素与对应的图像像素有一个为1,则将该像素的值设为1,否则为0;腐蚀运算时,如果结构元中的像素与对应的图像像素都为1,则将该像素的值设为1,否则为0;重复上述步骤直至处理完图像的所有像素。
74.以上步骤可通过以下代码实现:
75.import cv2
76.#读入图像
77.img=cv2.imread('input.jpg')
78.#定义结构元
79.kernel=cv2.getstructuringelement(cv2.morph_rect,(5,5))
80.#进行图像膨胀
81.dilated_img=cv2.dilate(img,kernel)
82.#进行图像腐蚀
83.eroded_img=cv2.erode(img,kernel)
84.#保存结果图像
85.cv2.imwrite('dilated.jpg',dilated_img)
86.cv2.imwrite('eroded.jpg',eroded_img)
87.在上述代码中,首先使用cv2.imread()读入图像,然后使用cv2.getstructuringelement()定义结构元,并使用cv2.dilate()和cv2.erode()分别进行图像膨胀和腐蚀,最后使用cv2.imwrite()保存处理后的图像。
88.通过定义结构元并将其与图像像素重叠,按照膨胀或腐蚀的规则来处理图像像素,从而改变图像的形态,并可能提高图像的质量。
89.具体地,对图像进行预处理,包括去噪、灰度化;
90.使用滤波器对图像进行平滑,以消除噪声并使边缘更加清晰;
91.应用边缘检测算子对图像进行边缘检测;
92.对检测到的边缘进行后处理,以确定最终的边缘位置。
93.以上步骤可通过以下代码实现:
94.import cv2
95.import numpy as np
96.#读入图像
97.img=cv2.imread('input.jpg')
98.#去噪
99.img=cv2.fastnlmeansdenoisingcolored(img,none,10,10,7,21)
100.#灰度化
101.gray_img=cv2.cvtcolor(img,cv2.color_bgr2gray)
102.#平滑滤波
103.smooth_img=cv2.gaussianblur(gray_img,(5,5),0)
104.#边缘检测
105.edges=cv2.canny(smooth_img,100,200)
106.#后处理
107.lines=cv2.houghlinesp(edges,1,np.pi/180,30,maxlinegap=10)
108.for line in lines:
109.x1,y1,x2,y2=line0.110.cv2.line(img,(x1,y1),(x2,y2),(0,255,0),2)
111.#保存结果图像
112.cv2.imwrite('output.jpg',img)
113.通过以上方法对图像边缘进行检测。
114.具体地,所述边缘检测算子为sobel、prewitt或canny算子。
115.具体地,对检测到的边缘进行后处理的方法包括包括非极大值抑制和连通域分析。
116.将图像转换为频率域。
117.在频率域中分析噪声的特征,并设计一种滤波器来去除噪声。例如,可以使用低通滤波器来去除高频噪声,或者使用高通滤波器来去除低频噪声。
118.使用设计好的滤波器对图像进行滤波,以去除噪声。
119.将滤波后的图像转换回时域,以获得去噪后的图像。
120.以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1