Python獲取圖像中像素點(diǎn)坐標(biāo)實(shí)例代碼
在圖片處理過程中,有時(shí)候我們想要確定圖片中某一像素的坐標(biāo),可以通過下面方法得到。點(diǎn)擊運(yùn)行程序,用鼠標(biāo)點(diǎn)擊我們想要獲取坐標(biāo)的區(qū)域,即可獲得其坐標(biāo)。結(jié)束方式是,敲擊鍵盤“q”,回車,即可結(jié)束程序。
# -*- coding: utf-8 -*-
"""
Created on Mon Jan 10 13:58:57 2022
@author: 2540817538(有問題聯(lián)系此QQ)
"""
import cv2
img=cv2.imread('C:/Users/25408/Desktop/p1.jpg')
def on_EVENT_LBUTTONDOWN(event, x, y, flags, param):
if event == cv2.EVENT_LBUTTONDOWN:
xy = "%d,%d" % (x, y)
print(x,y)
cv2.circle(img, (x, y), 2, (0, 0, 255))
cv2.putText(img, xy, (x, y), cv2.FONT_HERSHEY_PLAIN,1.0, (0,0,255))
cv2.imshow("image", img)
cv2.namedWindow("image")
cv2.setMouseCallback("image", on_EVENT_LBUTTONDOWN)
while(1):
cv2.imshow("image", img)
key = cv2.waitKey(5) & 0xFF
if key == ord('q'):
break
cv2.destroyAllWindows()運(yùn)行示例:


附:python中 鼠標(biāo)點(diǎn)擊獲取圖片像素點(diǎn)的坐標(biāo)兩種辦法 區(qū)域像素處理
在圖片中,用鼠標(biāo)點(diǎn)擊并返回點(diǎn)擊坐標(biāo)
1. cv2 的辦法
區(qū)域像素可以進(jìn)行處理,我做了一個(gè)鼠標(biāo)選取兩點(diǎn),將這塊區(qū)域置零的操作。
import cv2
import numpy as np
img = cv2.imread('C:\\Users\\mimi\\Desktop\\1.jpg')
a =[]
b = []
def on_EVENT_LBUTTONDOWN(event, x, y,flags, param):
? ? if event == cv2.EVENT_LBUTTONDOWN:
? ? ? ? xy = "%d,%d" % (x, y)
? ? ? ? a.append(x)
? ? ? ? b.append(y)
? ? ? ? cv2.circle(img, (x, y), 1, (255, 0, 0), thickness=-1)
? ? ? ? cv2.putText(img, xy, (x, y), cv2.FONT_HERSHEY_PLAIN,
? ? ? ? ? ? ? ? ? ? 1.0, (0, 0, 0), thickness=1)
? ? ? ? cv2.imshow("image", img)
cv2.namedWindow("image")
cv2.setMouseCallback("image", on_EVENT_LBUTTONDOWN)
cv2.imshow("image", img)
cv2.waitKey(0)
print(a[0],b[0])
img[b[0]:b[1],a[0]:a[1],:] = 0 ? #注意是 行,列(y軸的,X軸)
cv2.imshow("image", img)
cv2.waitKey(0)
print (a,b)2.plt的方法
不能對(duì)圖像的像素處理,我做了一個(gè)區(qū)域置黑的操作沒成功,上一個(gè)代碼可以實(shí)現(xiàn)
import matplotlib.pyplot as plt
from PIL import Image
im = Image.open("C:\\Users\\mimi\\Desktop\\1.jpg")
plt.imshow(im, cmap = plt.get_cmap("gray"))
pos=plt.ginput(2)
print(pos)
a=[]
b=[]
for i in range(len(pos)):
? ? a.append(pos[i][0])
? ? b.append(pos[i][1])
print (a,b)
im[a[0]:a[1],b[0]:b[1],:]
plt.imshow(im)總結(jié)
到此這篇關(guān)于Python獲取圖像中像素點(diǎn)坐標(biāo)的文章就介紹到這了,更多相關(guān)Python獲取像素點(diǎn)坐標(biāo)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python異常處理機(jī)制結(jié)構(gòu)實(shí)例解析
這篇文章主要介紹了Python異常處理機(jī)制結(jié)構(gòu)實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
python調(diào)用opencv實(shí)現(xiàn)貓臉檢測(cè)功能
這篇文章主要介紹了python調(diào)用opencv實(shí)現(xiàn)貓臉檢測(cè)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01
Python實(shí)現(xiàn)清除文件夾中重復(fù)視頻
本文將利用Python中的os、hashlib、shutil模塊實(shí)現(xiàn)對(duì)文件夾中的重復(fù)視頻進(jìn)行清除,實(shí)現(xiàn)文件夾中無(wú)重復(fù)文件情況發(fā)生,需要的可以參考一下2022-05-05
8個(gè)Python中可復(fù)用函數(shù)的最佳實(shí)踐分享
在Python編程中,編寫可復(fù)用的函數(shù)是提高代碼質(zhì)量和開發(fā)效率的關(guān)鍵,本文將介紹8種最佳實(shí)踐,并提供豐富的示例代碼,希望可以幫助大家編寫高質(zhì)量的可復(fù)用函數(shù)2023-12-12
Python實(shí)現(xiàn)自動(dòng)玩貪吃蛇程序
這篇文章主要介紹了通過Python實(shí)現(xiàn)的簡(jiǎn)易的自動(dòng)玩貪吃蛇游戲的小程序,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)一學(xué)2022-01-01
Python datatime庫(kù)語(yǔ)法使用詳解
這篇文章主要介紹了Python datatime庫(kù)語(yǔ)法使用詳解,datetime模塊用于是date和time模塊的合集,文章圍繞相關(guān)資料展開詳情,感興趣的小伙伴可以擦參考一下2022-07-07
Python中如何使用多線程優(yōu)化For循環(huán)
這篇文章主要為大家詳細(xì)介紹了在Python中如何使用多線程實(shí)現(xiàn)優(yōu)化For循環(huán),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-01-01
python實(shí)現(xiàn)健康碼查驗(yàn)系統(tǒng)
這篇文章主要介紹了?python實(shí)現(xiàn)健康碼查驗(yàn)系統(tǒng),主要用到的是python用了opencv庫(kù)和pyzbar庫(kù),文中給大家提供一段代碼判斷是否綠碼,需要的朋友可以參考下2022-04-04
Python使用Kafka處理數(shù)據(jù)的方法詳解
Kafka是一個(gè)分布式的流數(shù)據(jù)平臺(tái),它可以快速地處理大量的實(shí)時(shí)數(shù)據(jù)。在Python中使用Kafka可以幫助我們更好地處理大量的數(shù)據(jù),本文就來(lái)和大家詳細(xì)講講具體使用方法吧2023-04-04

