作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有没有人在 Windows 上成功地做到这一点?我正在尝试命令 DSLR 相机在 Windows 机器上通过 USB 使用 Python 拍照。或者您有更好的解决方案吗(我无法切换到 Linux)。
最佳答案
顺便说一下,这里有一个可行的解决方案,使用 Python 3.5(通过 Anaconda 安装)。
ISO 和快门的参数是硬连线的,但如果您需要它,这应该可以帮助您。
import sys
import os
import subprocess
import datetime
def func_TakeNikonPicture(input_filename):
camera_command = 'C:\Program Files (x86)\digiCamControl\CameraControlCmd.exe'
camera_command_details = '/filename ./' + input_filename + ' /capture /iso 500 /shutter 1/30 /aperture 1.8'
print('camera details = ',camera_command_details)
full_command=camera_command + ' ' + camera_command_details
p = subprocess.Popen(full_command, stdout=subprocess.PIPE, universal_newlines=True, shell=False)
(output, err) = p.communicate()
#This makes the wait possible
p_status = p.wait(1)
# print(p.stdout.readline())
#This will give you the output of the command being executed
print('Command output: ' + str(output))
print('Command err: ' + str(err))
print('done')
if(len(sys.argv) < 2):
rawimagename = 'test.jpg'
else:
# sys.argv[0] is the program name, sys.argv[1] is the first file, etc.
# need to shift this over
files = sys.argv[1:len(sys.argv)]
# Read the image
rawimagename = files[0]
if(os.path.isfile(rawimagename) is True):
print("File exists...not overwriting.")
sys.exit()
# Store date/time for file uniqueness
current_dt=datetime.datetime.now().strftime('%Y%m%d_%H%M%S')
print("Current date time = " + current_dt)
rawimagename=current_dt + '_' + rawimagename
print('Name of raw image will be: ', rawimagename)
# take picture
func_TakeNikonPicture(rawimagename)
关于python - 使用 digicamcontrol 使用 Python 控制尼康相机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43358257/
有没有人在 Windows 上成功地做到这一点?我正在尝试命令 DSLR 相机在 Windows 机器上通过 USB 使用 Python 拍照。或者您有更好的解决方案吗(我无法切换到 Linux)。
我是一名优秀的程序员,十分优秀!