改掉了很多奇怪bug(zhenye.li修改)

This commit is contained in:
FEIJINTI 2022-09-19 13:21:55 +08:00
parent 13c413e7a7
commit 03346292b9
3 changed files with 23 additions and 18 deletions

View File

@ -91,7 +91,7 @@ def main():
while True:
cmd = input().strip().upper()
if cmd == 'IM':
img = cv2.imread(r"C:\Users\FEIJINTI\PycharmProjects\wood_color\data\dark\rgb60.png")
img = cv2.imread(r"C:\Users\FEIJINTI\PycharmProjects\wood_color\data\data20220919\dark\rgb60.png")
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
width = img.shape[0]
height = img.shape[1]
@ -113,7 +113,11 @@ def main():
else:
print('指令执行失败')
elif cmd == 'TR':
send_message = b'\xaa\x00\x00\x00\x05' + (' ' + cmd).upper().encode('ascii') + b'\xff\xff\xff\xbb'
model = "C:/Users/FEIJINTI/PycharmProjects/wood_color/data/data20220919"
model = model.encode('ascii')
length = len(model) + 4
length = length.to_bytes(4, byteorder='big')
send_message = b'\xaa' + length + (' ' + cmd).upper().encode('ascii') + model + b'\xff\xff\xbb'
socket_send_1.send(send_message)
print('发送成功')
if rec_socket(socket_send_2, cmd_type=cmd, ack=True):
@ -125,7 +129,7 @@ def main():
else:
print('指令执行失败')
elif cmd == 'MD':
model = "model_2020-11-08_20-49.p"
model = "C:/Users/FEIJINTI/PycharmProjects/wood_color/models/model_2020-11-08_20-49.p"
model = model.encode('ascii')
length = len(model) + 4
length = length.to_bytes(4, byteorder='big')

View File

@ -307,10 +307,10 @@ class WoodClass(object):
获取图像数据
:return: x_data, y_data
"""
data_dir = ROOT_DIR if data_dir is None else data_dir
dark_data = self.get_image_data(img_dir=os.path.join(data_dir, "data", "dark"))
middle_data = self.get_image_data(img_dir=os.path.join(data_dir, "data", "middle"))
light_data = self.get_image_data(img_dir=os.path.join(data_dir, "data", "light"))
data_dir = os.path.join(ROOT_DIR, "data", "data20220919") if data_dir is None else data_dir
dark_data = self.get_image_data(img_dir=os.path.join(data_dir, "dark"))
middle_data = self.get_image_data(img_dir=os.path.join(data_dir, "middle"))
light_data = self.get_image_data(img_dir=os.path.join(data_dir, "light"))
if (dark_data is False) or (middle_data is False) or (light_data is False):
return False
x_data = np.vstack((dark_data, middle_data, light_data))
@ -354,17 +354,17 @@ if __name__ == '__main__':
# 初始化wood
wood = WoodClass(w=4096, h=1200, n=3000, debug_mode=False)
print("色彩纯度控制量{}/{}".format(wood.k, wood.n))
wood.correct()
# wood.correct()
# wood.load()
# fit 相应的文件夹
wood.fit_pictures(data_path=r"C:\Users\FEIJINTI\PycharmProjects\wood_color")
wood.fit_pictures(data_path=r"C:\Users\FEIJINTI\PycharmProjects\wood_color\data\data20220919")
# 测试单张图片的预测predict_mode=True表示导入本地的model, False为现场训练的
pic = cv2.imread(r"./data/dark/rgb60.png")
start_time = time.time()
for i in range(100):
wood_color = wood.predict(pic)
end_time = time.time()
print("time consume:"+str((end_time - start_time)/100))
print("wood_color:"+str(wood_color))
# pic = cv2.imread(r"./data/dark/rgb60.png")
# start_time = time.time()
# for i in range(100):
# wood_color = wood.predict(pic)
# end_time = time.time()
# print("time consume:"+str((end_time - start_time)/100))
# print("wood_color:"+str(wood_color))

View File

@ -181,7 +181,8 @@ def parse_protocol(data: bytes) -> (str, any):
img = np.frombuffer(img, dtype=np.uint8).reshape((n_rows, n_cols, -1))
return cmd, img
elif cmd == 'TR':
return cmd, None
data = data.decode('ascii')
return cmd, data
elif cmd == 'MD':
data = data.decode('ascii')
return cmd, data