中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

wordpress去頂部文字seo深度解析

wordpress去頂部文字,seo深度解析,網(wǎng)站開發(fā)常用的數(shù)據(jù)庫,wordpress FTP媒體庫文章目錄 一、情況介紹二、思路情況二、代碼展示三、感受 一、情況介紹 前幾天也是參加了研究生數(shù)學(xué)建模競賽(也就是華為杯),也是和本校的兩個數(shù)學(xué)學(xué)院的朋友在網(wǎng)上組的隊(duì)伍。昨天(9.25)通宵干完論文(一條…

文章目錄

  • 一、情況介紹
  • 二、思路情況
  • 二、代碼展示
  • 三、感受

一、情況介紹

前幾天也是參加了研究生數(shù)學(xué)建模競賽(也就是華為杯),也是和本校的兩個數(shù)學(xué)學(xué)院的朋友在網(wǎng)上組的隊(duì)伍。昨天(9.25)通宵干完論文(一條爛命就是干!),我們選擇的是E題,題目內(nèi)容簡單點(diǎn)就是,高速公路上可能會堵車,對堵車情況進(jìn)行預(yù)測,并且啟動應(yīng)急車道舒緩交通壓力,通過的是4個監(jiān)測點(diǎn)的視頻。
emmm,這次比賽我想法是,隊(duì)長擔(dān)任模型,我是負(fù)責(zé)出圖、做軟件(知道我的人應(yīng)該清楚,我本科就是軟件),結(jié)果比賽第二天下午的時候,論文進(jìn)展幾乎為0,我就清楚了,這個隊(duì)伍沒有一個適合的模型,然后我就上了,當(dāng)一次“不正規(guī)”的模型(至于為什么不正規(guī),我下面會講,不過也是圓夢了我本科的一個想法,就是軟件轉(zhuǎn)模型,當(dāng)一次模型)

二、思路情況

這里我就不展示我的摘要了,哈哈哈哈,當(dāng)然我的摘要,也是被指導(dǎo)老師夸獎了。
這里我說下思路情況:
對于第一問第一小問首先就是數(shù)據(jù)獲取,和隊(duì)友討論下,確定了三個參數(shù):車流量、車速、車流密度。(原本是想繼續(xù)加的,但是實(shí)在想不到什么比較好的參數(shù)),嗯花了2天時間數(shù)據(jù)才處理完成,中間磕磕絆絆,出的數(shù)據(jù)都不符合實(shí)際,最后準(zhǔn)備造的時候,發(fā)現(xiàn)出的數(shù)據(jù)正常了,然后出成折線圖,對各個時間段的各參數(shù)的情況進(jìn)行分析。比如什么時段到什么時段車速多少、車密度和之前對比怎么樣。第二小問,首先使用肘部法則,確定聚類數(shù)(我看下圖,確定為5),之后使用k-means聚類聚5類,最后按照數(shù)據(jù)使用ARIMA時間序列模型,預(yù)測5分鐘的數(shù)據(jù)。第三小問,使用交叉驗(yàn)證驗(yàn)證有效性。

對于第二問:先說下,對于這題重點(diǎn)是,提供理論依據(jù),想了下又需要第一問產(chǎn)生關(guān)聯(lián),所以就是介紹了基于時間序列預(yù)測結(jié)果的邏輯回歸模型,并且都是二分類問題,把理論依據(jù)給說明了

對于第三問第一小問,就是首先用k-means聚類兩類,之后使用邏輯回歸,兩者進(jìn)行對比。第二小問,量化的話,我們使用了混淆矩陣,放入k-means作為真實(shí)值,邏輯回歸作為預(yù)測值,帶入混淆矩陣。

對于第四問:我乍一看,再一分析,我以為是最優(yōu)化問題,有目標(biāo)函數(shù),也有約束條件。但是約束條件太空洞了。沒有什么預(yù)算之類的,反正我沒想到怎么搞,最后是確定預(yù)測精度隨著時間的變化,確定安裝視頻監(jiān)控點(diǎn)的位置。

二、代碼展示

對于問題一,使用yolov5算法對視頻數(shù)據(jù)進(jìn)行檢測

import torch
import cv2
import numpy as np
import matplotlib.pyplot as plt
import os
import pandas as pd
from scipy.spatial import distance
import warnings# 忽略特定的FutureWarning
warnings.filterwarnings('ignore', category=FutureWarning)# 加載YOLOv5模型
model = torch.hub.load('ultralytics/yolov5', 'yolov5s', pretrained=True)# 定義觀測區(qū)域的長度(單位:公里),假設(shè)為50米
observation_length = 0.05  # 50米等于0.05公里# 初始化OpenCV的多目標(biāo)追蹤器
tracker = cv2.legacy.MultiTracker_create()# 追蹤車輛的結(jié)構(gòu)
class Vehicle:def __init__(self, bbox, tracker):self.bbox = bbox  # 車輛的檢測框self.tracker = tracker  # 對應(yīng)的追蹤器self.positions = []  # 存儲每幀車輛中心的位置def add_position(self, center):self.positions.append(center)def calculate_speed(self, fps):# 如果追蹤到的點(diǎn)少于2個,無法計(jì)算速度if len(self.positions) < 2:return 0# 計(jì)算速度,根據(jù)前后位置和時間差prev_center = self.positions[-2]current_center = self.positions[-1]pixel_distance = distance.euclidean(prev_center, current_center)speed = (pixel_distance / 1000) * fps / observation_length  # km/hreturn speed# 初始化車輛列表
vehicles = []def process_video_yolov5(video_path):cap = cv2.VideoCapture(video_path)if not cap.isOpened():print(f"無法打開視頻文件 {video_path}")returnfps = int(cap.get(cv2.CAP_PROP_FPS))  # 獲取視頻幀率frame_count = 0vehicle_count_per_25_frames = []  # 每25幀的車輛總數(shù)speed_per_25_frames = []  # 每25幀通過藍(lán)線的車輛平均速度density_per_25_frames = []  # 每25幀的車輛密度(藍(lán)線以下車輛數(shù))total_vehicle_count = 0# 獲取視頻幀的寬度和高度,用于繪制藍(lán)線frame_width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))frame_height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))blue_line_y = int(frame_height * 0.25)  # 在視頻四分之一處畫一根水平藍(lán)線while True:ret, frame = cap.read()if not ret:break# 每25幀重新檢測一次車輛,并更新跟蹤器if frame_count % 25 == 0:# 使用YOLOv5進(jìn)行車輛檢測results = model(frame)detections = results.xyxy[0].cpu().numpy()  # [x1, y1, x2, y2, conf, cls]# 清空舊的跟蹤器并添加新檢測到的車輛vehicles.clear()for *box, conf, cls in detections:if int(cls) in [2, 3, 5, 7]:  # 汽車, 卡車等車輛類x1, y1, x2, y2 = map(int, box)bbox = (x1, y1, x2 - x1, y2 - y1)  # 計(jì)算檢測框tracker = cv2.TrackerCSRT_create()  # 使用CSRT追蹤器tracker.init(frame, bbox)vehicle = Vehicle(bbox, tracker)vehicles.append(vehicle)total_vehicle_count += 1else:# 更新車輛的追蹤位置for vehicle in vehicles:success, bbox = vehicle.tracker.update(frame)if success:# 計(jì)算中心點(diǎn)并保存x, y, w, h = map(int, bbox)center_x, center_y = (x + x + w) // 2, (y + y + h) // 2vehicle.add_position((center_x, center_y))# 繪制藍(lán)線cv2.line(frame, (0, blue_line_y), (frame_width, blue_line_y), (255, 0, 0), 2)frame_count += 1# 每25幀,計(jì)算一次車輛數(shù)量、通過藍(lán)線的車輛平均速度和車輛密度if frame_count % 25 == 0:# 統(tǒng)計(jì)當(dāng)前幀的車輛數(shù)current_vehicle_count = len(vehicles)vehicle_count_per_25_frames.append(current_vehicle_count)# 計(jì)算每輛車的平均速度speeds = [vehicle.calculate_speed(fps) for vehicle in vehicles]avg_speed = np.mean(speeds) if speeds else 0speed_per_25_frames.append(avg_speed)# 計(jì)算藍(lán)線以下的車輛密度vehicles_below_line = sum(1 for vehicle in vehicles if vehicle.bbox[1] > blue_line_y)density_per_25_frames.append(vehicles_below_line)print(f"每25幀車輛總數(shù): {current_vehicle_count}, 平均速度: {avg_speed} km/h, 藍(lán)線以下車輛數(shù): {vehicles_below_line}")# 顯示結(jié)果cv2.imshow('Vehicle Detection with YOLOv5', frame)# 按 'q' 鍵退出if cv2.waitKey(1) & 0xFF == ord('q'):breakcap.release()cv2.destroyAllWindows()print(f"視頻 {video_path} 處理完成,車輛總數(shù): {total_vehicle_count}")return vehicle_count_per_25_frames, speed_per_25_frames, density_per_25_frames# 繪制并保存車流密度、流量、速度的折線圖到桌面,并生成Excel文件
def save_to_excel_and_plot(vehicle_counts, speed_counts, density_counts):time_points = list(range(1, len(vehicle_counts) + 1))  # X軸為每25幀的時間點(diǎn)# 創(chuàng)建DataFramedf = pd.DataFrame({'Time (every 25 frames)': time_points,'Vehicle Count (Flow)': vehicle_counts,'Average Speed (km/h)': speed_counts,'Vehicle Density (below blue line)': density_counts  # 添加藍(lán)線以下車輛密度列})# 獲取桌面路徑desktop_path = os.path.join(os.path.join(os.environ['USERPROFILE']), 'Desktop')  # Windowssave_dir = desktop_pathif not os.path.exists(save_dir):os.makedirs(save_dir)# 保存Excel文件excel_path = os.path.join(save_dir, 'vehicle_data_with_density.xlsx')df.to_excel(excel_path, index=False)print(f"數(shù)據(jù)已保存到 {excel_path}")# 繪制折線圖plt.figure(figsize=(10, 6))# 繪制車輛流量plt.plot(time_points, vehicle_counts, marker='o', linestyle='-', color='b', label='Vehicle Count')# 繪制平均速度plt.plot(time_points, speed_counts, marker='s', linestyle='-', color='g', label='Average Speed')# 繪制藍(lán)線以下車輛密度plt.plot(time_points, density_counts, marker='^', linestyle='-', color='r', label='Vehicle Density (below blue line)')plt.title('Vehicle Data over Time (every 25 frames)')plt.xlabel('Time (every 25 frames)')plt.ylabel('Value')plt.grid(True)plt.legend()# 保存圖表到桌面save_path = os.path.join(save_dir, 'vehicle_data_with_density_plot.png')plt.savefig(save_path)print(f"圖表已保存到 {save_path}")plt.show()# 處理視頻
video_paths = ['20240501_20240501135236_20240501160912_135235.mp4']
for video_path in video_paths:vehicle_counts, speed_counts, density_counts = process_video_yolov5(video_path)save_to_excel_and_plot(vehicle_counts, speed_counts, density_counts)

在這里插入圖片描述

下面這個代碼是對于之前的物體識別進(jìn)行的初稿,出的效果很好看

import torch
import cv2
import numpy as np# 加載YOLOv5模型
model = torch.hub.load('ultralytics/yolov5', 'yolov5s', pretrained=True)def process_video_yolov5(video_path):cap = cv2.VideoCapture(video_path)if not cap.isOpened():print(f"無法打開視頻文件 {video_path}")returnvehicle_count = 0while True:ret, frame = cap.read()if not ret:break# 使用YOLOv5進(jìn)行檢測results = model(frame)# 解析檢測結(jié)果,results.pandas().xyxy 返回檢測結(jié)果的 DataFramedetections = results.xyxy[0].cpu().numpy()  # [x1, y1, x2, y2, conf, cls]for *box, conf, cls in detections:# 檢測類別ID,2: 汽車, 3: 摩托車, 5: 公共汽車, 7: 卡車if int(cls) in [2, 3, 5, 7]:x1, y1, x2, y2 = map(int, box)vehicle_count += 1# 在圖像上繪制檢測框cv2.rectangle(frame, (x1, y1), (x2, y2), (0, 255, 0), 2)# 顯示結(jié)果cv2.imshow('Vehicle Detection with YOLOv5', frame)# 按 'q' 鍵退出if cv2.waitKey(1) & 0xFF == ord('q'):breakcap.release()cv2.destroyAllWindows()print(f"視頻 {video_path} 處理完成,車輛總數(shù): {vehicle_count}")# 處理視頻
video_paths = ['20240501_20240501135236_20240501160912_135235.mp4']
for video_path in video_paths:process_video_yolov5(video_path)

在這里插入圖片描述
兩者結(jié)合就是下面這個
在這里插入圖片描述

三、感受

比賽真的是很鍛煉人的能力,但是也是收獲頗豐。
首先就是遇到兩個很好很好的朋友,zxz,lsy,兩個隊(duì)友,哈哈哈哈哈感覺,比完賽感覺我們都認(rèn)識三年了一樣,很熟了。
其次就是我安裝完成了torch、pycharm、以及虛擬環(huán)境的概念的、庫的安裝(這一點(diǎn)真的很關(guān)鍵,因?yàn)槲乙苍谙胛野l(fā)論文準(zhǔn)備看著機(jī)器視覺的方向發(fā)展,而且我之前的深度之眼的專欄,也是到了安裝anacoda、pycharm、cuda(原來我的電腦nvidia本來就有)、ptorch,之后就卡住了,因?yàn)楦杏X分不清他們,幾個怕安裝錯了
然后,我隊(duì)友也是幫我安裝好類似公式編輯器的東西,還有一個公式識別的網(wǎng)站,兩個搭配起來真的超級好用。
還有就是論文寫作,也是相應(yīng)的鍛煉了自己論文寫作能力把,也是完成了本科想當(dāng)模型的夢想。哈哈哈哈哈,不想當(dāng)模型的軟件,不是好軟件。也是寫了數(shù)學(xué)建模方向的第一次的摘要,寫的也是十分的充實(shí),很開心的被認(rèn)可了。(唯一的遺憾就是流程圖、圖啥的幾乎是沒有的,時間太少了)
最后,chatgpt真是神器,需要什么樣的代碼跟他說就行,報了什么錯問他就行,提出問題,讓他給出模型,,給他數(shù)據(jù)也能按照你的要求進(jìn)行相應(yīng)的處理,出圖、分析,很牛逼。

http://www.risenshineclean.com/news/11830.html

相關(guān)文章:

  • 幸福人壽保險公司官方網(wǎng)站百度seo怎么做網(wǎng)站內(nèi)容優(yōu)化
  • b站推廣網(wǎng)站2024年不用下載站長工具seo綜合查詢騰訊
  • 如何上傳安裝網(wǎng)站模板南京seo關(guān)鍵詞優(yōu)化預(yù)訂
  • wordpress清理網(wǎng)站緩存推廣賺錢一個50元
  • 網(wǎng)站建設(shè)入駐淄博seo
  • cdr做網(wǎng)站網(wǎng)站優(yōu)化策略分析
  • 最好玩的網(wǎng)站今天大事件新聞
  • 做網(wǎng)站用什么語音網(wǎng)站seo推廣招聘
  • 標(biāo)簽化網(wǎng)站seo快排優(yōu)化
  • 南通網(wǎng)站建設(shè).線上推廣具體應(yīng)該怎么做
  • 廣州網(wǎng)站設(shè)計(jì)流程網(wǎng)絡(luò)銷售平臺排名前十
  • orchard可以做哪些網(wǎng)站網(wǎng)站seo優(yōu)化排名
  • 免費(fèi)咨詢廣東律師事務(wù)所靖江seo要多少錢
  • 網(wǎng)站背景大小網(wǎng)絡(luò)營銷外包推廣
  • 吳忠住房和城鄉(xiāng)建設(shè)局網(wǎng)站重慶網(wǎng)絡(luò)seo公司
  • 保定專業(yè)網(wǎng)站制作百度推廣賬戶優(yōu)化方案
  • 換網(wǎng)站公司自己的網(wǎng)站怎么樣推廣優(yōu)化
  • 兼職 做網(wǎng)站怎么做好網(wǎng)絡(luò)營銷
  • 建設(shè)網(wǎng)站需要什么技術(shù)寧波seo網(wǎng)站排名
  • 有多少人自己做電影網(wǎng)站seo搜索規(guī)則
  • 自己做網(wǎng)站怎么選架構(gòu)專注網(wǎng)絡(luò)營銷推廣公司
  • 香港賣手機(jī)網(wǎng)站大全b2b免費(fèi)網(wǎng)站推廣平臺
  • 政府門戶網(wǎng)站群建設(shè)工作總結(jié)seo是什么軟件
  • css3 特效網(wǎng)站北京seo相關(guān)
  • 聊城網(wǎng)站制作公司競價托管服務(wù)公司
  • 公安部濟(jì)南網(wǎng)絡(luò)優(yōu)化哪家專業(yè)
  • xyz域名的網(wǎng)站有哪些企業(yè)網(wǎng)站網(wǎng)頁設(shè)計(jì)
  • 深圳龍崗做網(wǎng)站的公司哪家好搜索引擎營銷例子
  • 富德生命人壽保險公司官方網(wǎng)站保單查詢品牌公關(guān)具體要做些什么
  • 有沒有做任務(wù)能兌換現(xiàn)金的網(wǎng)站關(guān)鍵詞排名的排名優(yōu)化