opencv3.3.0載入本地圖片和網路圖片新解
阿新 • • 發佈:2019-02-02
讀入本地圖片
imread的用法如下:
第一個引數是含路徑的檔名,第二個引數是讀入檔案的格式,規定為:
第二個引數可以預設,也可以輸入0和1,0將轉變為灰度圖,1保持原樣。
如下所示。
加上字尾imread(file,cv2.IMREAD_COLOR)和
imread(file,cv2.IMREAD_ANYCOLOR)的對比如下:
讀入網路圖片
在爬取照片時,無需將照片存入本地,直接線上處理將會給工作帶來極大的便利,可惜,imread不具備讀入url_src的功能,採用urllib.request.urlopen()或者skimage或者PIL中的IMAGE還需要轉換,說多了這些坑都是淚啊。
opencv讀入網路圖片其實可以採用videoCapture()的方法:
cv2.Videocapture(url_src)即可。
# -*- coding: utf-8 -*-
# @Time : 2017/11/12 12:05
# @Author : aikes
# @Email : [email protected]
# @File : chinese_font.py
# @Software: python3.6.3
# opencv3.3.0
# pyqt5
# pycharm 2017.2
import cv2
url_src='https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=3147796071,609587839&fm=27&gp=0.jpg'
file='c://liuyan2.jpg'
#img=cv2.imread(file,cv2.IMREAD_ANYCOLOR)
cap=cv2.VideoCapture(url_src)
if(1):ret,img=cap.read()
print(img.shape)
cv2.imshow("photo",img) #顯示影象
cv2.waitKey(0)
開啟百度,點選圖片,輸入“美女”,右鍵選取“複製圖片地址”,賦值給url_src,效果如下。
是不是非常便利,無需多禮,叩安吧。