整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          讓Python代碼和邁克杰克遜一起跳舞

          讓Python代碼和邁克杰克遜一起跳舞

          目環境

          語言: Python3

          工具:Pycharm

          想要學習Python。關注小編頭條號,私信【學習資料】,即可免費領取一整套系統的板Python學習教程!

          工具準備

          ffmpeg,剛才說的處理視頻的程序,可去官網下載https://www.ffmpeg.org/download.html#build-windows。

          PIL 包:Python 的圖形處理庫。

          numpy 包:Python 的一種開源的數值計算擴展,可用來存儲和處理大型矩陣。

          程序結構

          我寫了三個 py 文件,一個用來把視頻轉換為圖片,一個用來把圖片轉為編碼,最后一個來做最后的執行。

          視頻處理

          下面的 ffmpeg 程序后面的幾個參數我解釋一下,-i 后面需要指定輸入的文件名。-f 指定格式(音頻或視頻格式)。-vframes 設置轉換多少楨(frame)的視頻。-ss 從指定的時間(s)截圖。

          def getImage(videoPath, imagePath):
           img_count=1
           crop_time=0.0
           while crop_time <=15.0:
           os.system('ffmpeg -i %s -f image2 -ss %s -vframes 1 %s.png'% (videoPath, str(crop_time), imagePath + str(img_count)))
           img_count +=1
           print('Geting Image ' + str(img_count) + '.png' + ' from time ' + str(crop_time))
           crop_time +=0.1
           print('圖片收集結束!!!')
          

          用這個函數獲取視頻的每幀圖片,給出的視頻存放路徑和獲取圖片的路徑調用此函數就可以獲取視頻每幀的圖片,我設置了每 0.1 秒保存一張圖片。

          圖片轉換

          用 convert('L') 把圖片轉換為為二值圖像,非黑即白。但是它每個像素用 8 個bit 表示,0 表示黑,255 表示白。

          def image2txt(inputFile, outputFile):
           im=Image.open(inputFile).convert('L')
           charWidth=100
           im=im.resize((charWidth, charWidth // 2))
           target_width, target_height=im.size
           data=numpy.array(im)[:target_height, :target_width]
           f=open(outputFile, 'w',encoding='utf-8')
           for row in data:
           for pixel in row:
           if pixel > 127:
           f.write('1')
           else:
           f.write(' ')
           f.write('\n')
           f.close() 
          

          執行這個函數不會有數據返回,用下一個 go.py 文件導入調用才行。

          控制輸出

          調用上個函數 image2txt,圖片轉換為編碼。

          def getTxt(imagePath, txtPath):
           img_count=1
           while img_count <=len(os.listdir(imagePath)):
           imageFile=imagePath + str(img_count) + '.png'
           txtFile=txtPath + str(img_count) + '.txt'
           image2txt.image2txt(imageFile, txtFile)
           print('MJ舞蹈加載中: ' + str(img_count) + '%')
           img_count +=1
          

          通過 os.system('cls') 控制屏幕的及時清除,以便及時顯示下一幀圖片的編碼。

          def play(txtPath):
           txt_count=1
           while txt_count <=len(os.listdir(txtPath)):
           os.system('type ' + txtPath + str(txt_count) + '.txt')
           txt_count +=1
           os.system('cls')
          

          給出編碼文件路徑和圖片路徑,執行函數。

          txt_dir_path=r'D:\MJ\mjtxt' + '\\'
          img_dir_path=r'D:\MJ\mjimages' + '\\'
          getTxt(img_dir_path, txt_dir_path)
          play(txt_dir_path)
          

          收集完視頻圖片后在 cmd 控制臺執行 go.py 文件,編碼出現后點擊視頻播放就能達到剛才視頻中的效果了。

          你們可以用自己的視頻去做,視頻背景固定的話效果更好。

          寫在最后

          方法教給大家了,視頻素材可以優化,大家可以自己收集好的視頻素材,發到朋友圈,讓代碼騷動起來!

          算機分為前端和后端,這兩大模塊組成了計算機上或者手機應用上的APP。今天來說說前端。

          說之前網頁大家都知道,那么網頁到底是什么?誰知道?

          網頁是構成網站的基本元素,是承載各種網站應用的平臺。通俗地說,您的網站就是由網頁組成的,如果您只有域名和虛擬主機而沒有制作任何網頁的話,您的客戶仍舊無法訪問您的網站。

          網頁是一個包含HTML標簽的純文本文件,它可以存放在世界某個角落的某一臺計算機中,是萬維網中的一“頁”,是超文本標記語言格式(標準通用標記語言的一個應用,文件擴展名為.html或.htm)。網頁通常用圖像檔來提供圖畫。網頁要通過網頁瀏覽器來閱讀。

          知道404是什么意思嗎?

          網頁又分為兩種:

          靜態頁

          靜態網頁,其內容是預先確定的,并存儲在Web服務器或者本地計算機/服務器之上。

          特點:

          1. 制作速度快,成本低。
          2. 模板一旦確定下來,不容易修改,更新比較費時費事。
          3. 常用于制作一些固定板式的頁面。
          4. 通常用于文本和圖像組成,常用于子頁面的內容介紹。
          5. 對服務器性能要求較低,但對存儲壓力相對較大。

          動態頁

          動態網頁,是取決于由用戶提供的參數,并根據存儲在數據庫中的網站上的數據中創建的頁面。

          通俗地講,靜態頁是照片,每個人看都是一樣的,而動態頁則是鏡子,不同的人(不同的參數)看都不相同。

          前端有個標準,你知道嗎?

          萬維網聯盟創建于1994年,是Web技術領域最具權威和影響力的國際中立性技術標準機構。到目前為止,W3C已發布了200多項影響深遠的Web技術標準及實施指南,如廣為業界采用的超文本標記語言(標準通用標記語言下的一個應用)、可擴展標記語言(標準通用標記語言下的一個子集)以及幫助殘障人士有效獲得Web內容的信息無障礙指南(WCAG)等,有效促進了Web技術的互相兼容,對互聯網技術的發展和應用起到了基礎性和根本性的支撐作用。

          W3C為解決 Web 應用中不同平臺、技術和開發者帶來的不兼容問題,保障 Web 信息的順利和完整流通,萬維網聯盟制定了一系列標準并督促 Web 應用開發者和內容提供者遵循這些標準。標準的內容包括使用語言的規范,開發中使用的導則和解釋引擎的行為等等。

          W3C也制定了包括XML和CSS等的眾多影響深遠的標準規范。 但是,W3C 制定的 web 標準似乎并非強制而只是推薦標準。因此部分網站仍然不能完全實現這些標準。特別是使用早期所見即所得網頁編輯軟件設計的網頁往往會包含大量非標準代碼。

          W3C 致力于對web 進行標準化

          W3C 創建并維護了 WWW 標準

          W3C 標準被稱為 W3C 推薦標準(W3C Recommendations)W3C 最重要的工作是發展 web 規范,也就是描述 web 通信協議(比如 HTML 和 XML)和其他構建模塊的“推薦標準”。

          那么前端是什么?

          前端即網站前臺部分,運行在PC端,移動端等瀏覽器上展現給用戶瀏覽的網頁。隨著互聯網技術的發展,HTML5,CSS3,前端框架的應用,跨平臺響應式網頁設計能夠適應各種屏幕分辨率,完美的動效設計,給用戶帶來極高的用戶體驗。

          上圖是寫網頁的編程語言中的三個。

          那么前端工程師所需要的技術有哪些?都是什么?

          HTML、CSS、JavaScript

          這三個是前端開發中最基本也是最必須的三個技能。前端的開發中,在頁面的布局時, HTML將元素進行定義,CSS對展示的元素進行定位,再通過JavaScript實現相應的效果和交互。雖然表面看起來很簡單,但這里面需要掌握的東西絕對不會少。在進行開發前,需要對這些概念弄清楚、弄明白,這樣在開發的過程中才會得心應手。

          那么這三個語言都是干什么的?能做什么?

          HTML

          指的是超文本標記語言 (Hyper Text Markup Language),這個也是我們網頁最常用普通的語言了,經歷了多個版本的發展,已經發展到5.0版了,得力于W3C建立的標準和規范,已普遍升級到了XHTML,XHTML 指可擴展超文本標簽語言(EXtensible HyperText Markup Language), XHTML 于2000年的1月26日成為 W3C 標準,是更嚴格更純凈的 HTML 代碼,XHTML 的目標是取代 HTML。XHTML 與 HTML 4.01 幾乎是相同的,XHTML 是作為一種 XML 應用被重新定義的 HTML,是一個 W3C 標準。W3C 將 XHTML 定義為最新的HTML版本。所有新的瀏覽器都支持 XHTML。

          CSS

          級聯樣式表(Cascading Style Sheet)簡稱“CSS”,通常又稱為“風格樣式表(Style Sheet)”,它是用來進行網頁風格設計的。比如,如果想讓鏈接字未點擊時是藍色的,當鼠標移上去后字變成紅色的且有下劃線,這就是一種風格。通過設立樣式表,可以統一地控制HTML中各標志的顯示屬性。級聯樣式表可以使人更能有效地控制網頁外觀。使用級聯樣式表,可以擴充精確指定網頁元素位置,外觀以及創建特殊效果的能力。

          Javascript

          是一種由Netscape的LiveScript發展而來的原型化繼承的面向對象的動態類型的區分大小寫的客戶端腳本語言,主要目的是為了解決服務器端語言,比如Perl,遺留的速度問題,為客戶提供更流暢的瀏覽效果。當時服務端需要對數據進行驗證,由于網絡速度相當緩慢,只有28.8kbps,驗證步驟浪費的時間太多。于是Netscape的瀏覽器Navigator加入了Javascript,提供了數據驗證的基本功能。

          漂亮嗎?

          如果說HTML是一個框架,CSS就是給這個框架添加裝飾品,JS就是在CSS上添加更炫酷的樣式。比如:一只鳥小的時候沒有羽毛,就相當于網頁只有HTML;而有了羽毛之后,就相當于添加了CSS;完全成長后羽毛非常漂亮,還能飛翔,就相當于添加了JS。(如上圖,就可以看作HTML+CSS+JS網頁的觀賞度)

          掌握以上知識技能,就可以開發了嗎?

          你用過幾個?

          1. 掌握各種修圖軟件,如PS\Fireworks\AI,不要求專業設計師水平,但要會用會改,今天是一專多能的時代,光會編程討不好飯碗的;
          2. 精通JavaScript、jQuery、vue、 react、angular等頁面效果框架,這是前端工程師的最核心技能,是專做頁面效果的技術。其實精通了JavaScript,后端編程語言,如.NET、PHP、Ruby都很容易掌握,因為其原理是一樣的;
          3. 精通一二種模板語言,并能修改,如織夢或wordpress的模板;
          4. 掌握thinkphp與zend框架,能修改此類開源源碼;
          5. 掌握html5與sencha,這是做手機等移動設備的頁面前端技術;
          6. 掌握一二種后端編程語言,如PHP、.NET、JAVA,能讀懂后端源碼,實際上其原理跟JS差不多;
          7. 掌握node.js,熟悉各種自動化部署工具;
          8. 前端是重視用戶體驗的,不是靠美工給的頁面 做出來就行了,那樣不是一個合格的前端。

          前端開發很快就能出效果,讓人很有成就感,因為有技術做出來的頁面是非常炫酷的,如果你可以,那么你就可以在女生面前打開一個炫酷的網頁說,這是我做出來的。你可以想想那是什么感覺。

          有個小問題,網頁有時候會出現404,或者其他數字,你知道是什么意思嗎?

          imicMotion - 一張圖片實現視頻跳舞,騰訊開源照片跳舞模型

          近期,騰訊聯合上海交通大學開源了一個可控視頻生成框架:MimicMotion,類似阿里的全民舞王,只需要上傳一張照片,然后再上傳一段人物的舞蹈或者動作視頻,就可以生成以照片中人物為原型的動作或者舞蹈視頻了。

          MimicMotion 可以根據我們上傳的視頻生成任意長度的高質量視頻。通過漸進式潛融合策略,不管多長的視頻都可以使用固定的資源進行生成,理論上多長的視頻生成都只是時間問題,不會爆顯存了。

          并且通過置信度感知姿態引導「這是指在生成視頻的過程中,系統會考慮它對于每個動作的確定程度。如果系統對某個動作非常確定,它就會更自信地生成這個動作;如果不太確定,它可能會更謹慎一些。」,讓生成的視頻更加流暢,過渡更加平滑。

          而且基于姿態置信度的區域損失放大顯著緩解了圖像的失真情況,更好的保證了視頻生成的質量。


          這個對顯卡要求較高,N卡,顯存16G起可玩,請先確認自己的顯卡是否能運行再下載!

          MimicMotion簡介

          MimicMotion 是由騰訊公司推出的一款人工智能人像動態視頻生成框架。該框架利用先進的技術,能夠根據用戶提供的單個參考圖像和一系列要模仿的姿勢,生成高質量、姿勢引導的人類動作視頻。MimicMotion 的核心在于其置信度感知的姿態引導技術,確保視頻幀的高質量和時間上的平滑過渡。

          MimicMotion - 一張圖片實現視頻跳舞,騰訊開源照片跳舞模型

          MimicMotion - 一張圖片實現視頻跳舞,騰訊開源照片跳舞模型

          MimicMotion - 一張圖片實現視頻跳舞,騰訊開源照片跳舞模型


          項目地址:https://tencent.github.io/MimicMotion/

          一鍵整合包下載:https://deepface.cc/thread-281-1-1.html

          功能特色

          MimicMotion 的功能特色包括:

          • 生成多樣化視頻:能夠根據用戶提供的姿態指導生成各種動作的視頻內容,如舞蹈、運動或日常活動。
          • 控制視頻長度:用戶可以指定視頻的持續時間,從幾秒的短片段到幾分鐘甚至更長的完整視頻。
          • 姿態引導控制:使用參考姿態作為條件,確保視頻內容在動作上與指定姿態保持一致,實現高度定制化的視頻生成。
          • 細節質量保證:特別關注視頻中的細節,尤其是手部等容易失真的區域,通過置信度感知的策略提供更清晰的視覺效果。
          • 時間平滑性:確保視頻幀之間的過渡平滑,避免卡頓或不連貫的現象,使視頻看起來更加流暢自然。
          • 減少圖像失真:通過置信度感知的姿態引導,減少由于姿態估計不準確導致的圖像失真。
          • 長視頻生成:采用漸進式潛在融合技術,生成長視頻時保持高時間連貫性。
          • 資源消耗控制:優化算法以確保資源消耗保持在合理范圍內,即使在生成較長視頻時也能有效地管理計算資源。


          生成案例

          MimicMotion - 一張圖片實現視頻跳舞,騰訊開源照片跳舞模型

          MimicMotion - 一張圖片實現視頻跳舞,騰訊開源照片跳舞模型

          MimicMotion - 一張圖片實現視頻跳舞,騰訊開源照片跳舞模型


          使用教程


          1.下載解壓一鍵包,雙擊一鍵啟動,等待自動進入WebUI界面

          2、上傳一張 參考圖片 和 參考視頻

          這里還需要提一下,如果視頻中的人物是全身的話,上傳照片中的人物也盡量用全身照,要不然出來的效果可能沒那么好。

          如果視頻中的人物是半身的,那也可以上傳半身的照片。

          半身照,人物臉部的細節比較到位,人物的臉部就不太容易崩壞,人物一致性保持的還是相當不錯的。

          3、高級設置參數可以默認,也可以調節幀率、分辨率等參數,最后點生成即可。

          注:目前整個項目生成速度較慢,尤其是參數越高,速度越慢,請根據自己的顯卡設置參數。


          主站蜘蛛池模板: 日韩人妻精品无码一区二区三区| 在线视频一区二区三区四区| 亚洲av高清在线观看一区二区| 日本大香伊一区二区三区| 精品视频一区二区三三区四区| 亚洲综合在线一区二区三区| 亚洲色无码专区一区| 亚洲国产精品一区二区第四页| 无码一区二区三区在线观看| 久久一区二区精品| 国产福利一区视频| 国产亚洲一区二区三区在线| 亚洲AV一区二区三区四区| 国精品无码A区一区二区| 亚洲av不卡一区二区三区| 亚洲色一区二区三区四区| 国产一区二区四区在线观看| 日本一区二区三区免费高清| 亚洲日韩国产精品第一页一区| 日韩a无吗一区二区三区| 亚洲国产精品第一区二区| 国产精品一区二区三区久久| 波多野结衣AV无码久久一区| 无码人妻一区二区三区兔费| 国产主播一区二区| 高清一区二区在线观看| 日本一区二区视频| 久久se精品一区二区| 精品一区二区三区无码免费直播| 精品国产鲁一鲁一区二区| 国产精品福利一区| 人妻精品无码一区二区三区| 八戒久久精品一区二区三区| 国产一区二区精品| 日本韩国黄色一区二区三区| 亚洲精品无码一区二区| 无码一区二区三区视频| 丰满人妻一区二区三区视频53| 国产一区精品视频| 在线播放偷拍一区精品| 2022年亚洲午夜一区二区福利|