欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python 繪制場景熱力圖的示例

 更新時(shí)間:2020年09月23日 14:24:52   作者:陶婷  
這篇文章主要介紹了python 繪制場景熱力圖的示例,幫助大家更好的利用python繪制圖像,感興趣的朋友可以了解下

我們在做諸如人群密集度等可視化的時(shí)候,可能會考慮使用熱力圖,在Python中能很方便地繪制熱力圖。

下面以識別圖片中的行人,并繪制熱力圖為例進(jìn)行講解。

  • 步驟1:首先識別圖像中的人,得到bounding box的中心坐標(biāo)。識別方法多樣化,坐標(biāo)也可以自己定義。
  • 步驟2:將所有中心坐標(biāo)放入一個(gè)list類型的變量data中,即data = [[x1,y1] [x2,y2] …]
  • 步驟3:繪制熱力圖,并將熱力圖加權(quán)疊加到原圖上。

需要import的包:

import cv2
import numpy as np
from PIL import Image
from pyheatmap.heatmap import HeatMap
import matplotlib.pyplot as plt

根據(jù)識別的結(jié)果得到data的值,傳入以下apply_heatmap(image,data)繪制熱力圖;

def apply_heatmap(image,data):
  '''image是原圖,data是坐標(biāo)'''
  '''創(chuàng)建一個(gè)新的與原圖大小一致的圖像,color為0背景為黑色。這里這樣做是因?yàn)樵诶L制熱力圖的時(shí)候如果不選擇背景圖,畫出來的圖與原圖大小不一致(根據(jù)點(diǎn)的坐標(biāo)來的),導(dǎo)致無法對熱力圖和原圖進(jìn)行加權(quán)疊加,因此,這里我新建了一張背景圖。'''
  background = Image.new("RGB", (image.shape[1], image.shape[0]), color=0)
  # 開始繪制熱度圖
  hm = HeatMap(data)
  hit_img = hm.heatmap(base=background, r = 100) # background為背景圖片,r是半徑,默認(rèn)為10
  # ~ plt.figure()
  # ~ plt.imshow(hit_img)
  # ~ plt.show()
  #hit_img.save('out_' + image_name + '.jpeg')
  hit_img = cv2.cvtColor(np.asarray(hit_img),cv2.COLOR_RGB2BGR)#Image格式轉(zhuǎn)換成cv2格式
  overlay = image.copy()
  alpha = 0.5 # 設(shè)置覆蓋圖片的透明度
  cv2.rectangle(overlay, (0, 0), (image.shape[1], image.shape[0]), (255, 0, 0), -1) # 設(shè)置藍(lán)色為熱度圖基本色藍(lán)色
  image = cv2.addWeighted(overlay, alpha, image, 1-alpha, 0) # 將背景熱度圖覆蓋到原圖
  image = cv2.addWeighted(hit_img, alpha, image, 1-alpha, 0) # 將熱度圖覆蓋到原圖

網(wǎng)站上隨意找一張圖片進(jìn)行實(shí)驗(yàn):

原圖如下:

結(jié)果如下:

可視化效果可以調(diào)節(jié),如:通過調(diào)節(jié)hm.heatmap(base=background, r = 100)中的r即可調(diào)節(jié)熱力點(diǎn)的半徑大小。

以上就是python 繪制場景熱力圖的示例的詳細(xì)內(nèi)容,更多關(guān)于python 繪制熱力圖的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python騷操作之動(dòng)態(tài)定義函數(shù)

    Python騷操作之動(dòng)態(tài)定義函數(shù)

    這篇文章主要介紹了Python騷操作之動(dòng)態(tài)定義函數(shù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • python操作kafka實(shí)踐的示例代碼

    python操作kafka實(shí)踐的示例代碼

    這篇文章主要介紹了python操作kafka實(shí)踐的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • 淺談Python生成器generator之next和send的運(yùn)行流程(詳解)

    淺談Python生成器generator之next和send的運(yùn)行流程(詳解)

    下面小編就為大家?guī)硪黄獪\談Python生成器generator之next和send的運(yùn)行流程(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • Python開發(fā)常用的一些開源Package分享

    Python開發(fā)常用的一些開源Package分享

    這篇文章主要介紹了Python開發(fā)常用的一些開源Package分享,常用的開源項(xiàng)目包括WEB開發(fā)框架、工具包、數(shù)據(jù)庫操作包、網(wǎng)絡(luò)操作包等,需要的朋友可以參考下
    2015-02-02
  • python 模擬在天空中放風(fēng)箏的示例代碼

    python 模擬在天空中放風(fēng)箏的示例代碼

    這篇文章主要介紹了python 模擬放風(fēng)箏的示例代碼,幫助大家更好的利用python處理圖像,感興趣的朋友可以了解下
    2021-04-04
  • 關(guān)于PyQt5主窗口圖標(biāo)顯示問題匯總

    關(guān)于PyQt5主窗口圖標(biāo)顯示問題匯總

    這篇文章主要介紹了關(guān)于PyQt5主窗口圖標(biāo)顯示問題匯總,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • Python中plt.scatter()函數(shù)的常見用法小結(jié)

    Python中plt.scatter()函數(shù)的常見用法小結(jié)

    這篇文章主要介紹了Python中plt.scatter()函數(shù)的常見用法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • Python?Asyncio庫之a(chǎn)syncio.task常用函數(shù)詳解

    Python?Asyncio庫之a(chǎn)syncio.task常用函數(shù)詳解

    Asyncio在經(jīng)過一段時(shí)間的發(fā)展以及獲取Curio等第三方庫的經(jīng)驗(yàn)來提供更多的功能,目前高級功能也基本完善。本文主要介紹了Asyncio庫中asyncio.task常用函數(shù)的使用,需要的可以參考一下
    2023-03-03
  • python對配置文件.ini進(jìn)行增刪改查操作的方法示例

    python對配置文件.ini進(jìn)行增刪改查操作的方法示例

    .ini配置文件常被用作存儲程序中的一些參數(shù),通過它程序可以變得更加靈活。下面這篇文章主要給大家介紹了關(guān)于python對配置文件.ini進(jìn)行增刪改查操作的方法示例,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • python 實(shí)現(xiàn)簡單的吃豆人游戲

    python 實(shí)現(xiàn)簡單的吃豆人游戲

    這篇文章主要介紹了python 如何實(shí)現(xiàn)簡單的吃豆人游戲,幫助大家更好的理解和學(xué)習(xí)使用python制作游戲,感興趣的朋友可以了解下
    2021-04-04

最新評論