一、OpenCV
OpenCV(開源計算機視覺庫)是一個用於計算機視覺和機器學習的開源庫,適用於處理圖片和視頻數據。
1. 圖像讀取和顯示:
<code>
import cv2
# 讀取圖像
img = cv2.imread('test.jpg',1)
# 顯示圖像
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
</code>
2. 邊緣檢測:
<code>
import cv2
# 讀取圖像
img = cv2.imread('test.jpg',1)
# 灰度化
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
# 邊緣檢測
edges = cv2.Canny(gray,50,150)
# 顯示邊緣
cv2.imshow('image',edges)
cv2.waitKey(0)
cv2.destroyAllWindows()
</code>
3. 視頻捕獲:
<code>
import cv2
cap = cv2.VideoCapture(0)
while(True):
# 逐幀捕獲
ret, frame = cap.read()
# 顯示幀
cv2.imshow('frame',frame)
# 退出
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 釋放攝像頭
cap.release()
cv2.destroyAllWindows()
</code>
二、Open3D
Open3D 是一個現代化的3D數據處理庫,以 Python 和 C++ 兩種編程語言擴展,旨在專註實現高效、可擴展、易用的3D數據處理和機器學習演算法。
1. 載入點雲數據:
<code>
import open3d as o3d
# 讀入點雲
pcd = o3d.io.read_point_cloud("test.ply")
# 可視化
o3d.visualization.draw_geometries([pcd])
</code>
2. 配准:
<code>
import open3d as o3d
# 讀入兩個點雲
source = o3d.io.read_point_cloud("source.ply")
target = o3d.io.read_point_cloud("target.ply")
# 配准
trans_init = np.asarray([[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]])
reg_p2p = o3d.registration.registration_icp(
source, target, max_correspondence_distance_coarse, trans_init,
o3d.registration.TransformationEstimationPointToPoint(),
o3d.registration.ICPConvergenceCriteria(relative_fitness=1e-6,
relative_rmse=1e-6, max_iteration=1000))
# 剛體變換
source.transform(reg_p2p.transformation)
# 可視化
o3d.visualization.draw_geometries([source, target])
</code>
三、OpenAI
OpenAI 是一個致力於人工智慧的非營利研究公司,旨在建立人工智慧 “安全”的範例。
1. 文本生成:
<code>
import openai
openai.api_key = "YOUR_API_KEY"
prompt = "In a shocking turn of events, scientists have discovered a herd of unicorns living in a remote, previously unexplored valley, in the Andes Mountains. Even more surprising to the researchers was the fact that the unicorns spoke perfect English."
model = "text-davinci-002"
response = openai.Completion.create(engine=model, prompt=prompt, max_tokens=60)
print(response.choices[0].text)
</code>
2. 圖像分類:
<code>
import openai
openai.api_key = "YOUR_API_KEY"
model_id = "image-alpha-001"
input_url = "https://images.pexels.com/photos/4499335/pexels-photo-4499335.jpeg"
output_format = "json"
response = openai.Image.create(model_id, input_url, output_format)
print(response.output_url)
</code>
以上是Python開發者必備了解的幾個Open庫,它們可以幫助開發者快速從事計算機視覺、3D數據處理和機器學習等方向的工作,減少重複開發和提高效率。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/227202.html