uthome視訊聊天貼圖…歡迎關注天善智能,我們是專注於商業智能BI,人工智慧AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!
對商業智能BI、大數據分析挖掘、機器學習,python,R等數據領域感興趣的同學加微信:tstoutiao,邀請你進入數據愛好者交流群,數據愛好者們都在這兒。
作者:Martin Renou
編譯:wLsq
Ipywidgets在Jupyter生態系統中扮演著重要角色,它帶來了用戶和數據之間的互動。小工具組件是多種的Python對象,通常在Jupyter Notebook或JupyterLab中具有可視化表示:按鈕,滑塊,文本輸入,複選框等。
Ipywidgets連結:
https://github.com/jupyter-widgets/ipywidgets
…用戶無需編寫Python代碼就可以使用滑鼠操作並設置滑塊完成交互
表示Python小組件的對象是在伺服器端(後端)的Python內核(負責執行JupyterNotebook中的代碼的部分)中工作的。Python對象包含有所有小組件狀態的信息。對於滑塊小部件,Python對象包含最小值,最大值,以及當前值。這個Python對象(在後端,伺服器端)可以與窗口小組件的Javascript模型(在前端,客戶端)同步,這個前端模型也包含了有關小組件的相同信息。每次用戶在筆記本中顯示小組件時,它都會創建一個與Javascript模型保持同步的視圖。在上面示例中,您可以看到兩個視圖是同步的。
…ipywidgets不僅僅是一個交互式小組件庫,它也是一個弁鈺j大的框架,可以直接創建新的自定義小組件。開發人員可以通過使用widget-cookiecutter項目快速啟動包含代碼結構和封裝的最佳實踐的小組件庫。
widget-cookiecutter連結:
https://github.com/jupyter-widgets/widget-cookiecutter/
已經有陶多多不同的小組件庫被創建好了,你可以直接使用mybinder在線試用它們,而無需安裝任何東西,下面的一些弁鄑‘i以在線操作試用,連結如下:
https://mybinder.org/
bqplot:2-D交互式數據
ipyleaflet:交互式地圖
pythreejs:交互式三維場景
ipyvolume:3-D交互式數據可視化和多卷渲染
nglview:三維交互式分子可視化
gmaps:Google地圖上的數據可視化
itk-jupyter-widgets:交互式2-D和3-D數據可視化
從ipywidgets 7.4開始,我們有兩個新的小組件:音頻和視頻,可以在Jupyter Notebook和Jupyterlab中輕鬆進行圖像/音頻處理。
與Image小組件一樣,新的音頻和視頻小組件在後端和前端之間同步二進位數據。你可以使用自己喜歡的庫(OpenCV,scikit-image 等)輕鬆操作此數據,並動態更新窗口小組件值。
…在視頻小組件上使用OpenCV進行邊緣檢測
這兩個小組件都是用於創建ipywebrtc庫不錯的構建塊。ipywebrtc由Maarten Breddels創建(Maarten是著名庫vaex和ipyvolume的作者)。它利用WebRTC瀏覽器API的強大弁遄A允釵bJupyter筆記本內部進行媒體流傳輸。
ipywebrtc的API非常簡單:首先,用戶將創建我們稱之為媒體流的小組件API。媒體流小組件也可以是:
一個WidgetStream小組件,給定任何輸入小組件一個VideoStream小組件,給定一個視頻小組件作為輸入一個ImageStream小組件,給定一個圖像小組件作為輸入一個AudioStream小組件,給定一個音頻小部件作為輸入一個CameraStream小組件,它為用戶的網絡攝像頭創建視頻/音頻流使用媒體流小組件,你可以:
使用VideoRecorder小組件錄製電影使用ImageRecorder小部件拍攝快照使用AudioRecorder小部件錄製音頻使用簡單的聊天弁鈺N其流式傳輸到同級…至於其他小部件庫,只需點擊此連結即可立即試用。你將能夠嘗試所有這些工作流程。
https://mybinder.org/v2/gh/maartenbreddels/ipywebrtc/master?filepath=docs/source
假設你想使用計算機上的攝像頭動態地執行圖像處理,並運行人臉識別,邊緣檢測或任何其他奇特的算法。使用ipywebrtc實現起來非常簡單。你需要做的就是創建一個CameraStream小組件的實例,在攝像頭視頻流作為輸入的情況下創建一個ImageRecorder,並實現處理圖像的回調(例如使用scikit-image)。
…使用CameraStream的快照創建ImageRecorder,並使用scikit-image動態處理圖像
ipywebrtc的另一個不錯的弁酮O能夠從任何小組件創建媒體小組件。這意味著你可以輕鬆地從您喜歡的小組件庫中記錄圖像和視頻,以進行二維或三維數據可視化(此處為ipyvolume)。
…使用ipyvolume小組件作為輸入創建WidgetStream,並使用VideoRecorder錄製視頻
一旦你使用了庫的這些不錯弁遄A你就可以下載你創建的視頻/圖像。或者,你可以使用聊天弁鄋蔣策@享它們。此弁鈺N聊天室名稱和你要共享的流(默認為CameraStream)作為輸入,並允陰z將Jupyter Notebook轉換為會議室!
…在PyPairs演講期間,使用ipywebrtc創建的聊天室
Github上製作這些圖像的示例:
https://github.com/QuantStack/quantstack-talks/tree/master/2018-11-14-PyParis-widgets/notebooks
關於作者
作者名字是Martin Renou,是QuantStack的科學軟體工程師。加入QuantStack之前,在SUPAERO學習。曾在巴黎的Logilab和劍橋的Enthought工作過。作為QuantStack的開源開發人員,參與了各種項目,從xsimd和xtensor在C ++到ipyleaflet和ipywebrtc在Python和Javascript中。
- END -
往期精彩:
金州勇士4年3冠的成弁絨Z!數據可視化分析告訴你答案20張圖表達程式設計師的心酸乾貨 機器學習概念的深度解析(入門必看)一款非常棒的特徵選擇工具:feature-selector高效方法 Jupyter Notebook 比你想像中的還要強大公眾號後台回復關鍵詞學習
回復 免費 獲取免費課程
回復 直播 獲取系列直播課
回復 Python 1小時破冰入門Python
回復 人工智慧 從零入門人工智慧
回復 深度學習 手把手教你用Python深度學習
回復 機器學習 小白學數據挖掘與機器學習
回復 貝葉斯算法 貝葉斯與新聞分類實戰
回復 數據分析師 數據分析師八大能力培養
回復 自然語言處理 自然語言處理之AI深度學習
…
uthome視訊聊天貼圖-你知道Jupyter notebook還可以用來做 「視頻聊天室」 嗎?
uthome視訊聊天貼圖…歡迎關注天善智能,我們是專注於商業智能BI,人工智慧AI,大數據分析與挖掘領域的垂直社區,學習,問答、求職一站式搞定!
對商業智能BI、大數據分析挖掘、機器學習,python,R等數據領域感興趣的同學加微信:tstoutiao,邀請你進入數據愛好者交流群,數據愛好者們都在這兒。
作者:Martin Renou
編譯:wLsq
Ipywidgets在Jupyter生態系統中扮演著重要角色,它帶來了用戶和數據之間的互動。小工具組件是多種的Python對象,通常在Jupyter Notebook或JupyterLab中具有可視化表示:按鈕,滑塊,文本輸入,複選框等。
Ipywidgets連結:
https://github.com/jupyter-widgets/ipywidgets
…用戶無需編寫Python代碼就可以使用滑鼠操作並設置滑塊完成交互
表示Python小組件的對象是在伺服器端(後端)的Python內核(負責執行JupyterNotebook中的代碼的部分)中工作的。Python對象包含有所有小組件狀態的信息。對於滑塊小部件,Python對象包含最小值,最大值,以及當前值。這個Python對象(在後端,伺服器端)可以與窗口小組件的Javascript模型(在前端,客戶端)同步,這個前端模型也包含了有關小組件的相同信息。每次用戶在筆記本中顯示小組件時,它都會創建一個與Javascript模型保持同步的視圖。在上面示例中,您可以看到兩個視圖是同步的。
…ipywidgets不僅僅是一個交互式小組件庫,它也是一個弁鈺j大的框架,可以直接創建新的自定義小組件。開發人員可以通過使用widget-cookiecutter項目快速啟動包含代碼結構和封裝的最佳實踐的小組件庫。
widget-cookiecutter連結:
https://github.com/jupyter-widgets/widget-cookiecutter/
已經有陶多多不同的小組件庫被創建好了,你可以直接使用mybinder在線試用它們,而無需安裝任何東西,下面的一些弁鄑‘i以在線操作試用,連結如下:
https://mybinder.org/
bqplot:2-D交互式數據
ipyleaflet:交互式地圖
pythreejs:交互式三維場景
ipyvolume:3-D交互式數據可視化和多卷渲染
nglview:三維交互式分子可視化
gmaps:Google地圖上的數據可視化
itk-jupyter-widgets:交互式2-D和3-D數據可視化
從ipywidgets 7.4開始,我們有兩個新的小組件:音頻和視頻,可以在Jupyter Notebook和Jupyterlab中輕鬆進行圖像/音頻處理。
與Image小組件一樣,新的音頻和視頻小組件在後端和前端之間同步二進位數據。你可以使用自己喜歡的庫(OpenCV,scikit-image 等)輕鬆操作此數據,並動態更新窗口小組件值。
…在視頻小組件上使用OpenCV進行邊緣檢測
這兩個小組件都是用於創建ipywebrtc庫不錯的構建塊。ipywebrtc由Maarten Breddels創建(Maarten是著名庫vaex和ipyvolume的作者)。它利用WebRTC瀏覽器API的強大弁遄A允釵bJupyter筆記本內部進行媒體流傳輸。
ipywebrtc的API非常簡單:首先,用戶將創建我們稱之為媒體流的小組件API。媒體流小組件也可以是:
一個WidgetStream小組件,給定任何輸入小組件一個VideoStream小組件,給定一個視頻小組件作為輸入一個ImageStream小組件,給定一個圖像小組件作為輸入一個AudioStream小組件,給定一個音頻小部件作為輸入一個CameraStream小組件,它為用戶的網絡攝像頭創建視頻/音頻流使用媒體流小組件,你可以:
使用VideoRecorder小組件錄製電影使用ImageRecorder小部件拍攝快照使用AudioRecorder小部件錄製音頻使用簡單的聊天弁鈺N其流式傳輸到同級…至於其他小部件庫,只需點擊此連結即可立即試用。你將能夠嘗試所有這些工作流程。
https://mybinder.org/v2/gh/maartenbreddels/ipywebrtc/master?filepath=docs/source
假設你想使用計算機上的攝像頭動態地執行圖像處理,並運行人臉識別,邊緣檢測或任何其他奇特的算法。使用ipywebrtc實現起來非常簡單。你需要做的就是創建一個CameraStream小組件的實例,在攝像頭視頻流作為輸入的情況下創建一個ImageRecorder,並實現處理圖像的回調(例如使用scikit-image)。
…使用CameraStream的快照創建ImageRecorder,並使用scikit-image動態處理圖像
ipywebrtc的另一個不錯的弁酮O能夠從任何小組件創建媒體小組件。這意味著你可以輕鬆地從您喜歡的小組件庫中記錄圖像和視頻,以進行二維或三維數據可視化(此處為ipyvolume)。
…使用ipyvolume小組件作為輸入創建WidgetStream,並使用VideoRecorder錄製視頻
一旦你使用了庫的這些不錯弁遄A你就可以下載你創建的視頻/圖像。或者,你可以使用聊天弁鄋蔣策@享它們。此弁鈺N聊天室名稱和你要共享的流(默認為CameraStream)作為輸入,並允陰z將Jupyter Notebook轉換為會議室!
…在PyPairs演講期間,使用ipywebrtc創建的聊天室
Github上製作這些圖像的示例:
https://github.com/QuantStack/quantstack-talks/tree/master/2018-11-14-PyParis-widgets/notebooks
關於作者
作者名字是Martin Renou,是QuantStack的科學軟體工程師。加入QuantStack之前,在SUPAERO學習。曾在巴黎的Logilab和劍橋的Enthought工作過。作為QuantStack的開源開發人員,參與了各種項目,從xsimd和xtensor在C ++到ipyleaflet和ipywebrtc在Python和Javascript中。
- END -
往期精彩:
金州勇士4年3冠的成弁絨Z!數據可視化分析告訴你答案20張圖表達程式設計師的心酸乾貨 機器學習概念的深度解析(入門必看)一款非常棒的特徵選擇工具:feature-selector高效方法 Jupyter Notebook 比你想像中的還要強大公眾號後台回復關鍵詞學習
回復 免費 獲取免費課程
回復 直播 獲取系列直播課
回復 Python 1小時破冰入門Python
回復 人工智慧 從零入門人工智慧
回復 深度學習 手把手教你用Python深度學習
回復 機器學習 小白學數據挖掘與機器學習
回復 貝葉斯算法 貝葉斯與新聞分類實戰
回復 數據分析師 數據分析師八大能力培養
回復 自然語言處理 自然語言處理之AI深度學習
…