我的目标是从 OpenCV (C++) 向 MQTT 代理发布 (x, y) 坐标的 JSON 流。我对将 JSON 数据从 OpenCV 传输到 MQTT 的好方法感到困惑。
我目前有一个 MQTT 代理管理计算机 1 上的 Python 发布者脚本和计算机 2 上的 Javascript 客户端脚本之间的 JSON 消息队列。我有计算机 3 运行 OpenCV,需要发送许多小的 JSON blob (x, y) 与 MQTT 代理近乎实时地协调。
我最初考虑将坐标从 OpenCV 连续写入本地文本文件,然后由并行运行的 Python MQTT 发布者脚本连续读取。但是,文件锁定存在问题,似乎没有必要写入磁盘。
理想情况下,我希望坐标流保留在内存中并经常发布到 MQTT 代理,比如每 10 毫秒发布一次。我正在努力寻找一种方法来使用 stdin/stdout 在 OpenCV 代码和 Python 发布者脚本之间工作。
感谢您的指导。谢谢。
最佳答案
不确定您缺少哪些部分,但您基本上想要:
#include "mqtt.h"
...
// Start up
mqtt_broker_handle_t *broker = mqtt_connect(client_name, ip_addr, port);
...
...
// Update broker
mqtt_publish(broker, topic, msg, QoS1);
关于python - OpenCV(在 C++ 中)到 MQTT 代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43988913/