与催催哥测试通过tr和md指令

This commit is contained in:
FEIJINTI 2022-10-05 13:20:53 +08:00
parent 7ee701f0d8
commit ea4b7e06cb
11 changed files with 14 additions and 8 deletions

0
.gitignore vendored Executable file → Normal file
View File

2
QT_test.py Executable file → Normal file
View File

@ -77,9 +77,11 @@ def rec_socket(recv_sock: socket.socket, cmd_type: str, ack: bool) -> bool:
def main():
socket_receive = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
socket_receive.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
socket_receive.bind(('127.0.0.1', 21123))
socket_receive.listen(5)
socket_send = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
socket_send.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
socket_send.bind(('127.0.0.1', 21122))
socket_send.listen(5)
print('等待连接')

0
README.md Executable file → Normal file
View File

0
classifer.py Executable file → Normal file
View File

0
pics/TODO.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

0
pics/result.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

0
pics/从木板中提取色彩.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

0
pics/色彩分类.png Executable file → Normal file
View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

0
root_dir.py Executable file → Normal file
View File

View File

@ -48,17 +48,18 @@ def main(is_debug=False):
console_handler.setLevel(logging.DEBUG if is_debug else logging.WARNING)
logging.basicConfig(format='%(asctime)s %(filename)s[line:%(lineno)d] - %(levelname)s - %(message)s',
handlers=[file_handler, console_handler], level=logging.DEBUG)
dual_sock = DualSock()
dual_sock = DualSock(connect_ip='192.168.2.221')
while not dual_sock.status:
dual_sock.reconnect()
# model_path = os.path.join(ROOT_DIR, r"/Users/zhouchao/Library/CloudStorage/OneDrive-macrosolid/PycharmProjects/wood_color/models/model_2022-09-28_13-15.p")
model_path = os.path.join(ROOT_DIR, r"C:\Users\FEIJINTI\PycharmProjects\wood_color\models\model_2022-09-28_13-15.p")
model_path = os.path.join(ROOT_DIR, r"models/model_2022-09-28_13-15.p")
# model_path = os.path.join(ROOT_DIR, r"models\model_2022-09-28_13-15.p")
detector = WoodClass(w=4096, h=1200, n=3000, debug_mode=False)
detector.load(path=model_path)
while True:
pack, next_pack = receive_sock(dual_sock)
if pack == b"":
time.sleep(5)
dual_sock.reconnect()
continue

13
utils.py Executable file → Normal file
View File

@ -85,7 +85,8 @@ def try_connect(connect_ip: str, port_number: int, is_repeat: bool = False, max_
connected_sock.connect((connect_ip, port_number))
except Exception as e:
reconnect_time += 1
logging.error(f'{reconnect_time}次连接失败\n {e}')
logging.error(f'{reconnect_time}次连接失败... 5秒后重新连接...\n {e}')
time.sleep(5)
continue
logging.warning(f'{"重新" if is_repeat else ""}连接成功')
return True, connected_sock
@ -125,9 +126,8 @@ class DualSock(PreSocket):
def receive(self, *args, **kwargs) -> bytes:
return self.received_sock.receive(*args, **kwargs)
# def set_prepack(self, pre_pack: bytes):
# temp = self.pre_pack
# self.pre_pack = temp + pre_pack
def set_prepack(self, pre_pack: bytes):
self.received_sock.set_prepack(pre_pack)
def reconnect(self, connect_ip='127.0.0.1', recv_port:int = 21122, send_port: int = 21123):
received_status, self.received_sock = try_connect(connect_ip=connect_ip, port_number=recv_port)
@ -135,7 +135,7 @@ class DualSock(PreSocket):
return received_status and send_status
def receive_sock(recv_sock: PreSocket, pre_pack: bytes = b'', time_out: float = -1.0, time_out_single=0.5) -> (
def receive_sock(recv_sock: PreSocket, pre_pack: bytes = b'', time_out: float = -1.0, time_out_single=5e20) -> (
bytes, bytes):
"""
从指定的socket中读取数据.
@ -163,6 +163,9 @@ bytes, bytes):
# logging.error(f'超时了,错误代码: \n{e}')
logging.info('运行中,等待指令..')
continue
except socket.timeout as e:
logging.info('运行中,等待指令..')
continue
except Exception as e:
logging.error(f'遇见未知错误,错误代码: \n{e}')
return b'', b''