为了账号安全,请及时绑定邮箱和手机立即绑定

同时控制步进电机和相机

同时控制步进电机和相机

慕妹3146593 2022-06-07 19:22:54
同时控制步进电机和相机的最佳方法是什么?假设相机放置在线性平台(步进电机)上,我想以 1 mm 的步长移动平台并在每一步结束时捕获一帧。两个设备(相机和舞台)都通过 2 个不同的 USB 2.0 端口连接到我的电脑(Ubuntu 18.04.3 LTS)。我的相机脚本如下所示:def camera():    ...    ...    ...    while(True):        cv2.imshow('live', frame)        ueye.is_ExitCamera(hCam2)        cv2.destroyAllWindows()if __name__ == "__main__":    camera()并从摄像机输出直播。对于电机,例如:i = 0while i < 6:           # Move 6 times    stepper.Move(0.5)  # Moves forward by 0.5 mm    time.sleep(1)      # Sleeps for a second    i += 1time.sleep(2)print("\nProcess End\n")close()                # closes port 并根据需要移动和睡觉。单独执行时,两个脚本都能成功运行。但是,如何组合这些脚本,以便在每个步骤结束时拍照?对于上面提到的移动 6 次的示例,我想在最后获得 6 张图像,在每一步结束时捕获。是否应该使用多线程、多处理?... 这两种设备都通过 2 个单独的 USB 2.0 端口连接到我的计算机。我不是编程的初学者,但也不是专家,所以任何建议都将不胜感激。
查看完整描述

1 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

您不能调用某些在每一步中捕获图像的函数是有原因的吗?


# import modules for camera and stepper control


def step_and_capture(steps=6):

  images = []

  for x in range(steps):

    stepper.Move(0.5)

    image = cam_capture_method() # returns a photo or it could write to somewhere

    time.sleep(1)

  # save the images to folder?


if __name__ == "__main__":

    step_and_capture()


查看完整回答
反对 回复 2022-06-07
  • 1 回答
  • 0 关注
  • 176 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号