今天想要從電腦抓keysight DSOX1204A 示波器的圖片,
於是我下了這個指令
scope.Visa.write(':DISPlay:DATA? PNG')
但圖片還是沒有抓回來,
之後找了資料發現,還需要一個讀回的指令
於是我下了
scope.Visa.write(':DISPlay:DATA? PNG')
screen_bytes=scope.Visa.read_raw()
結果讀回來一堆byte數值如下圖,也就是圖片的bin數值,想把它轉成圖片
但是會有錯誤,原因就是出在前面有紅色框框的數字
於是,我就把這幾個數值刪了
python很簡單
於是我就下了這個指令
cleaned_byte_data = screen_bytes[10:]
之後再把這些2進制轉成圖片,我用以下方法
image = Image.open(io.BytesIO(cleaned_byte_data))
dt = datetime.now()
file_name = dt.strftime('%Y%m%d_%H%M%S')
print(file_name+'.PNG')
image.save(file_name+'.PNG')
這個lib 是
from PIL import Image
這截圖問題每次都會遇到,這邊先記錄一下
全站熱搜
留言列表