This commit is contained in:
2024-09-23 23:00:38 +08:00
parent c7d5bd94f5
commit d4cda7e637
+37 -27
View File
@@ -2,36 +2,46 @@ import cv2 as cv
import numpy as np import numpy as np
# 1 # 1
img=cv.imread("sample.jpg",cv.IMREAD_GRAYSCALE) img = cv.imread("sample.jpg", cv.IMREAD_GRAYSCALE)
img2=cv.imread('sample.jpg',cv.IMREAD_GRAYSCALE) img2 = cv.imread('sample.jpg', cv.IMREAD_GRAYSCALE)
# 2 # 2
def draw_circle(event,x,y,flags,param): def draw_circle(event, x, y, flags, param):
if event==cv.EVENT_LBUTTONDOWN: if event == cv.EVENT_LBUTTONDOWN:
cv.circle(img,(x,y),10,0,-1) cv.circle(img, (x, y), 10, 0, -1)
#4
alpha=0.3
beta=80 # 4
alpha = 0.3
beta = 80
def updateAlpha(x): def updateAlpha(x):
global alpha,img,img2 global alpha, img, img2
alpha=cv.getTrackbarPos('Alpha','modify_sample') alpha = cv.getTrackbarPos('Alpha', 'modify_sample')
alpha=alpha*0.01 alpha = alpha * 0.01
img=np.uint8(np.clip((alpha*img2+beta),0,255)) img = np.uint8(np.clip((alpha * img2 + beta), 0, 255))
def updateBeta(x): def updateBeta(x):
global beta,img,img2 global beta, img, img2
beta=cv.getTrackbarPos('Beta','modify_sample') beta = cv.getTrackbarPos('Beta', 'modify_sample')
img=np.uint8(np.clip((alpha*img2+beta),0,255)) img = np.uint8(np.clip((alpha * img2 + beta), 0, 255))
#3
# 3
cv.namedWindow('modify_sample') cv.namedWindow('modify_sample')
cv.createTrackbar('Alpha','modify_sample',0,300,updateAlpha) cv.createTrackbar('Alpha', 'modify_sample', 0, 300, updateAlpha)
cv.createTrackbar('Beta','modify_sample',0,255,updateBeta) cv.createTrackbar('Beta', 'modify_sample', 0, 255, updateBeta)
cv.setTrackbarPos('Alpha','modify_sample',100) cv.setTrackbarPos('Alpha', 'modify_sample', 100)
cv.setTrackbarPos('Beta','modify_sample',10) cv.setTrackbarPos('Beta', 'modify_sample', 10)
cv.setMouseCallback('modify_sample',draw_circle) cv.setMouseCallback('modify_sample', draw_circle)
while(1): while (1):
cv.imshow('modify_sample',img) cv.imshow('modify_sample', img)
pressedKey=cv.waitKey(5) pressedKey = cv.waitKey(5)
# 5 # 5
if pressedKey==ord('q'): if pressedKey == ord('q'):
break break
if pressedKey==ord('s'): if pressedKey == ord('s'):
cv.imwrite('modified_sample.jpg',img) cv.imwrite('modified_sample.jpg', img)