mirror of
https://github.com/NanjingForestryUniversity/supermachine-wood.git
synced 2025-11-08 10:13:53 +00:00
改掉了很多奇怪bug(zhenye.li修改)
This commit is contained in:
parent
13c413e7a7
commit
03346292b9
10
QT_test.py
10
QT_test.py
@ -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')
|
||||
|
||||
26
classifer.py
26
classifer.py
@ -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))
|
||||
|
||||
|
||||
3
utils.py
3
utils.py
@ -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
|
||||
|
||||
Loading…
Reference in New Issue
Block a user