主頁 > 企業開發 > 影像檢索技術怎樣準如“雷達”,從一張到億張精準定位圖片違規?

影像檢索技術怎樣準如“雷達”,從一張到億張精準定位圖片違規?

2022-02-25 06:24:14 企業開發

在Web2.0的時代下,影像、視頻等各類異構資料每天都在以驚人的速度增長,如何在茫茫圖庫中方便、快速、準確地找到所需影像?你是否還在為如何檢索到真正想要獲取的影像的關鍵字而苦苦煩惱?你是否發現目前基于文本描述的影像搜索結果在大規模影像中結果往往差強人意?

追根溯源,這是由于基于文本的影像檢索在外來的影像入庫時離不開人工的干預,文本描述的特征依賴于人工標注的介入,導致圖庫受到標注者的認知水平、言語使用以及主觀判斷等的影響,造成影像的文字描述存在差異,同時,標注費時費力,這類方法并不適用于海量影像庫的檢索,

背景介紹

針對這一系列問題,基于內容的影像檢索(CBIR,Content Based Image Retrieval)充分發揮了計算機擅長于處理重復任務的優勢,它能夠根據用戶給定的查詢影像,提取有效影像視覺特征,衡量影像之間的相似性,并從一個大規模資料庫中快速找到與給定影像內容相關或相似的影像,并按相關的排序回傳給用戶,將人們從耗費大量人力、物力和財力的人工標注中解放出來,

目前,基于內容的影像檢索技術已經深入到了許許多多的領域,在電子商務、皮革布料、著作權保護、醫療診斷、公共安全、街景地圖等工業領域得以成功應用,為人們的生活生產提供了極大的便利,

本文從影像檢索流程出發,結合網易易盾團隊在數字風控“內容安全”中的實踐經驗,介紹構建基于內容的影像檢索系統所涉及的一些典型演算法,

檢索系統的搭建

一個典型的基于內容的影像檢索基本框架如圖1所示,整個框架分為2大部分:offline離線部分以及online在線部分,

offline部分主要包括了檢索影像庫、特征提取、特征庫以及檢索結構,

檢索影像庫:一個用于存放待查詢的影像資料庫,在實際專案中,這個檢索影像庫是一個動態變化的影像資料庫,

特征提取:影像特征的表達能力即利用計算機提取影像中屬于特征性的資訊的方法及程序,影像的任何統計量都可以作為影像的特征,哪怕是影像本身的像素資訊,在實際專案中,我們通常使用如顏色、結構等傳統視覺特征和基于深度學習的底層/中層/高層語意特征作為影像特征,

特征庫:用于存放需要查詢的影像庫中提取的影像特征,

構建索引結構:這一步驟的目的就是對高維度特征的檢索性能進行優化,雖然直接采用暴力檢索一一比對這樣的方法檢索的精度是最高的,但代價是檢索的時間也是最長的,為了在檢索精度和檢索速度之間找到一個平衡點,因此常見的方法有查找優化以及向量優化,在實際業務中,也常常采用兩種方式相結合的方法,

online部分主要是完成對query影像的特征提取操作,在這一步操作中,值得注意的是,特征提取方法需要和offline中相保持一致,

影像檢索技術怎樣準如“雷達”,從一張到億張精準定位圖片違規?

 

圖1 | 基于內容的影像檢索基本框架

從上圖可以看出,影像特征提取是整個檢索系統的基礎,檢索結構的設定是整個檢索系統性能的關鍵,下面就對這兩部分進行詳細介紹,

01 特征提取

從圖1可以清晰地看出,檢索系統的性能在很大程度上依賴于特征提取方法,理想情況下,特征提取方法應具有識別能力強、魯棒性好、特征維度低三個特點,圖2給出了特征提取演算法在魯棒性方面的示例效果,

影像檢索技術怎樣準如“雷達”,從一張到億張精準定位圖片違規?

 

圖2 | 特征提取演算法在魯棒性方面的示例效果

但在實際情況下,由于計算機所“看到”的影像像素層面表達的低層次資訊與人所理解的影像多維度高層次資訊內容之間有很大的差距,因此如何準確、高效、精準地提取影像特征是我們所要做的作業,從提取的方式上來看特征提取演算法,大致可以分為(1)基于手工設計的傳統視覺特征;(2)基于CNN(卷積神經網路)的深度視覺特征這兩類,如圖3所示,

影像檢索技術怎樣準如“雷達”,從一張到億張精準定位圖片違規?

 

圖3 | 特征提取方法

1.1 基于手工設計的傳統視覺特征

傳統的視覺特征在發展早期主要是利用顏色、紋理、形狀、結構特征等全域特征,這些特征計算簡單、表示直觀,但這些特征往往因維度較高使得其計算量較大,同時這些全域影像特征易受影像中的光照條件、位移、遮擋、截斷等因素影響,隨后更細致的區域特征描述逐步出現,例如經典的SIFT(ScaleInvariant Feature Transform)、SURF、ORB、BRISK等,這類演算法相對簡單,無需學習與訓練,僅需簡單計算與統計,也有較好的穩定性,對旋轉、尺度縮放、亮度變化有較好的穩定性,不易受視角變化、仿射變換、噪聲的干擾[1],但由于這類特征極大程度上依賴于人為的設計,因此有時候并不能準確地表征影像特征,進而對檢索性能造成一定影響,

1.2 基于CNN(卷積神經網路)的深度視覺特征

由于手工設計的傳統視覺特征其表示能力有限,檢索性能也往往面臨很大的局限性,2014年后,以卷積神經網路為代表的深度學習逐漸替代了傳統手工特征的檢測與描述方法,各類CNN模型層出不窮,如AlexNet、VGGNet、GoogleNet、RetinaNet、ResNet等,神經網路的深層級具有較強語意資訊;淺層級特征中保存了包含影像邊緣、紋理、顏色等資訊,這類方法主要分為:(1)Pre-trained CNN model;(2)Finetuned CNN model;(3)Hybrid CNN-based method[2],

方法一:Pre-trained CNN model

在Pre-trained CNN model中,常見的做法有2種:

(1)直接使用全連接層作為全域特征描述作為單張影像的特征,這是一種最直接,也是最簡單快捷方便的想法,首先FC層的輸出可以看成是一種天然的向量形式,因此可以直接作為影像的特征向量,其次,FC層的輸出實際上是對影像整體語意的表示,具有全域表示性,因此可以被視作是一種影像的全域特征,通過實驗也表明其在能產生較好的檢索精度,若使用指數歸一化也可提高檢索精度,

(2)使用卷積層特征作為單張影像的特征,由于FC層本質上是其中的每一個神經元都和前一層所有神經元相連接,這使得提取的特征在一定程度上丟失了空間資訊,同時對于如裁剪、遮擋等變換的魯棒性也會降低,而卷積層由于其僅僅與輸入的feature map中的區域區域相關聯,確保了提取的特征中包含了更多的區域特征,魯棒性更強,因此提出了使用卷積層代替全連接層,實驗表明從不同層提取的特征表現出不同的檢索性能,高層網路的泛化能力要低于較低層的網路,

這類方法通常是使用一個現成開源分類識別模型作為一個特征提取器,這些開源模型通常會在ImageNet上這類資料集較大的資料上進行訓練,而當實際業務資料與ImageNet資料分布差異過大時,模型提取的特征不一定非常適合影像檢索任務,因此,源域和目標域之間的重疊程度在檢索中起著至關重要的作用,

方法二:Finetuned CNN model

為了使模型具有更高的可擴展性和更有效的檢索,可以采用finetuned CNN model的方法,根據具體場景的特點大致可以分為如下2種方法:(1)監督學習方法;(2)無監督學習方法,

(1)基于有監督學習finetune模型

當有足夠的充足的有標簽業務資料時,基于有監督學習的方法來進行finetune模型是一個不錯的選擇,圖4給出了方法的部分示例網路結構,這類方法主要分為2種[3]:

一是,基于純分類模型進行finetune,這類方法的思想很簡單,即在新的資料上對分類模型進行重新訓練,這類方法雖然在一定程度上拉近了源域和目標域之間的距離,但這類方法存在一個問題:對于學習區分特定物體的類內之間的差異能力不強,

二是,基于分類+度量學習(metric learning)進行finetune,這類方法是在上述方法上進行了改進,通過引入度量學習旨在學習一種低維空間,在這個空間內將同類樣本之間的距離拉近,異類樣本之間的距離拉遠,這種方法既關注了類間樣本,也關注了類內樣本,這類方法從網路結構的形式上大致可以分為基于Siamese網路[4]和基于triplet networks[5]網路,兩者最大的區別就在于輸入影像對的組成情況,前者輸入影像是由正或負樣對組成,如圖4(b)、(c)所示,后者則是anchor影像與相似和不相似的樣本配對,如圖4(d)、(e)、(f)所示,

影像檢索技術怎樣準如“雷達”,從一張到億張精準定位圖片違規?

 

圖4 | 基于有監督學習finetune模型

(2)基于無監督學習finetune模型

但在實際業務中,千萬級資料的標注任務就顯得不現實,既費時又費力,同時成本高,基于上述種種限制,基于無監督學習的方法應運而生,該方向目前存在以下2個主要的分支:

分支一,流形學習(Manifold learning)+度量學習,這類方法[6]主要是通過流形學習來挖掘影像在流形空間上的相似性,進而選擇相對應的正負樣本進行度量學習,這類方法與前述基于分類+度量學習進行finetune方法最大的不同就在于,該方法的正負樣本選擇是通過流形學習,而非根據給定的有監督的標簽資訊,

分支二,基于AutoEncoder的無監督框架,這類方法[7]利用輸入影像本身作為輸出結果標簽,通過編碼器對輸入圖片進行編碼,然后利用解碼器將編碼后的特征盡可能重建原始輸入影像,在提取影像特征時,只需要將影像輸入編碼器即可,另外由于編碼器輸出的特征維度往往較低,這也達到一個降維的效果,這類方法本質上是通過一種非線性的變換函式完成特征提取,

方法三:Hybrid CNN-based method

前面的2種方法都只將影像輸入到網路中一次來獲取描述符,目前也有一些是將影像多次輸入到網路中,基于區域表示聚合的方法先設法從輸入影像中提取一系列的區域區域,之后分別將這些區域區域前饋網路生成對應的區域表示,最后通過特定編碼方法將這些區域表示聚合為最終表示,這類方法的弊端在于需要前饋網路多次,

02 特征增強

在檢索程序中,影像特征的表達能力在一定程度上決定檢索性能的優劣,因此在提取特征影像特征后,往往為了獲得更強可辨識性的特征,通常會采用影像聚合、嵌入映射、特征融合的方式,

2.1 特征聚合

當提取的特征是從卷積層輸出時,通常獲得一個H*W*C的特征,利用池化(pooling)操作可以在某種程度上實作特征的聚合,從而提高特征的表達能力,sum/average pooling和max pooling是兩種常用的特征聚合手段(如圖7中的MAC方法),sum/average pooling 考慮了卷積層的所有激活輸出,削弱了高度激活特征的影響,而max pooling特別適用于稀疏特征,這兩種聚合特征可以認為是當前feature map的全域特征,除上述方法之外,在pooling操作之前引入其他的一些操作,如構建Spatial權重和Channel權重(CroW方法[8])、對feature map某一塊區域進行pooling操作(R-MAC[9])等方式提高感興趣區域特征資訊或引入區域特征資訊來提高特征的表達能力,

影像檢索技術怎樣準如“雷達”,從一張到億張精準定位圖片違規?

 

圖5 | 特征聚合

2.2 嵌入映射

除上述操作之外,還可以將特征嵌入到高維空間中以獲得緊湊的特征,尤其是當提取的特征為區域特征(如SIFT)時,我們就需要對區域特征進行聚合,作為影像的全域表示,目前常見的方法有VLAD[10]、BoW[11]、FisherVector(FV)[12]等等,

2.3 特征融合

發展至今,特征融合的方法多種多樣,主要可以分為以下兩種:(1)單模型層級融合;(2)模型級融合,

在單模型層級融合中,考慮到同一個模型的不同feature map所關注的影像特征不同,融合不同層的特征可以充分利用高層語意特征和低層細節特征,這樣可以在度量語意相似度時進行相互補充,在一定程度上保證了檢索的性能,

眾所周知,在相同資料集上對不同模型進行訓練,模型的特征提取能力不盡相同,既然如此,如果可以找到一種方式來充分發揮各個模型之間的優勢,是不是有利于提高檢索的性能?毋庸置疑,答案是肯定,

對于這兩種融合策略,關鍵問題是什么特征是最好的組合?在現有的深度模型的基礎上,已經對回答這個問題進行了一些探索[13][14],

除深度特征之間融合之外,我們在實際業務中嘗試發現將CNN特征與傳統的特征相互補充,相輔相成,也可以實作更為精準、更為全面的影像檢索特征,

上述三大類特征增強的方法,每種方式的側重點不同,因此具體使用哪一種或哪幾種方法視每個業務的情況而定,

03 構建結構索引

影響整個檢索系統性能除影像的特征表達能力之外就是檢索程序了,整個檢索程序中最核心的是計算兩個特征向量之間的相似性后進行排序,獲得查詢結果,這時候能想到最簡單粗暴方法就是暴力(brute-force)搜索方法:通過與查詢庫中特征向量對標,一一計算相似性并排序,這種方法實作起來相對容易、檢索精度高,但在大規模影像庫上,這種搜索的方式并不友好,主要存在如下問題:

 

一是,記憶體占用過大:雖然提取的特征已經比直接保存影像小了很多,但當資料量仍然龐大,這些向量的存盤成為一個大問題,

二是,回應時間過長:消耗巨大的計算資源,且單次查詢的回應時間會隨樣本數目N成線性增長,

因此,為了在實際業務中落地,就必須在盡可能保持搜索精度的前提下,降低搜索空間的空間復雜度與時間復雜度,通常采用構建索引的方法將暴力匹配(精確搜索)轉化為近似搜索來近一步提升搜索速度、節省記憶體占用空間,業內也提出了不少檢索演算法,雖然應對不同資料維度和分布有不同演算法,其核心思想可歸為3大類:

(1)空間劃分法,這類方法的核心是將檢索的資料集所在的特征空間分成多個子空間,把“挨得近”的資料點放在同一個子空間中,這樣在檢索時可以快速定位到這些子空間,減少需掃描的資料量的個數,提高檢索的速度,常用的演算法有KD-Tree[15]、聚類檢索等,但這類演算法對于高維特征,如維度達到幾百時,這類演算法的性能會急劇下降,

(2)空間編碼和轉換法,這類演算法可以看作是一種對特征的編碼操作,實作將高維空間資料映射到低維空間,實作資料的壓縮,進而減少掃描的資料點的計算量,ProductQuantization(PQ)演算法[16]就是其中一個典型代表,

(3)鄰居圖法,以HNSW[17]為代表,這類演算法有一個重要的前提:認為鄰居的鄰居仍為鄰居,整個演算法核心是基于圖結構完成整個檢索,首先根據特征庫中所有特征預先構建一張關系圖,檢索時直接在關系圖上進行游走遍歷,最侄訓得檢索結果,這類方法速度快、精度高,但臨界點存盤浪費記憶體,增加存盤空間的開銷,

 

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/432012.html

標籤:Html/Css

上一篇:掃盲貼:2021 CSS 最冷門特性都是些啥?

下一篇:ES6入門

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • IEEE1588PTP在數字化變電站時鐘同步方面的應用

    IEEE1588ptp在數字化變電站時鐘同步方面的應用 京準電子科技官微——ahjzsz 一、電力系統時間同步基本概況 隨著對IEC 61850標準研究的不斷深入,國內外學者提出基于IEC61850通信標準體系建設數字化變電站的發展思路。數字化變電站與常規變電站的顯著區別在于程序層傳統的電流/電壓互 ......

    uj5u.com 2020-09-10 03:51:52 more
  • HTTP request smuggling CL.TE

    CL.TE 簡介 前端通過Content-Length處理請求,通過反向代理或者負載均衡將請求轉發到后端,后端Transfer-Encoding優先級較高,以TE處理請求造成安全問題。 檢測 發送如下資料包 POST / HTTP/1.1 Host: ac391f7e1e9af821806e890 ......

    uj5u.com 2020-09-10 03:52:11 more
  • 網路滲透資料大全單——漏洞庫篇

    網路滲透資料大全單——漏洞庫篇漏洞庫 NVD ——美國國家漏洞庫 →http://nvd.nist.gov/。 CERT ——美國國家應急回應中心 →https://www.us-cert.gov/ OSVDB ——開源漏洞庫 →http://osvdb.org Bugtraq ——賽門鐵克 →ht ......

    uj5u.com 2020-09-10 03:52:15 more
  • 京準講述NTP時鐘服務器應用及原理

    京準講述NTP時鐘服務器應用及原理京準講述NTP時鐘服務器應用及原理 安徽京準電子科技官微——ahjzsz 北斗授時原理 授時是指接識訓通過某種方式獲得本地時間與北斗標準時間的鐘差,然后調整本地時鐘使時差控制在一定的精度范圍內。 衛星導航系統通常由三部分組成:導航授時衛星、地面檢測校正維護系統和用戶 ......

    uj5u.com 2020-09-10 03:52:25 more
  • 利用北斗衛星系統設計NTP網路時間服務器

    利用北斗衛星系統設計NTP網路時間服務器 利用北斗衛星系統設計NTP網路時間服務器 安徽京準電子科技官微——ahjzsz 概述 NTP網路時間服務器是一款支持NTP和SNTP網路時間同步協議,高精度、大容量、高品質的高科技時鐘產品。 NTP網路時間服務器設備采用冗余架構設計,高精度時鐘直接來源于北斗 ......

    uj5u.com 2020-09-10 03:52:35 more
  • 詳細解讀電力系統各種對時方式

    詳細解讀電力系統各種對時方式 詳細解讀電力系統各種對時方式 安徽京準電子科技官微——ahjzsz,更多資料請添加VX 衛星同步時鐘是我京準公司開發研制的應用衛星授時時技術的標準時間顯示和發送的裝置,該裝置以M國全球定位系統(GLOBAL POSITIONING SYSTEM,縮寫為GPS)或者我國北 ......

    uj5u.com 2020-09-10 03:52:45 more
  • 如何保證外包團隊接入企業內網安全

    不管企業規模的大小,只要企業想省錢,那么企業的某些服務就一定會采用外包的形式,然而看似美好又經濟的策略,其實也有不好的一面。下面我通過安全的角度來聊聊使用外包團的安全隱患問題。 先看看什么服務會使用外包的,最常見的就是話務/客服這種需要大量重復性、無技術性的服務,或者是一些銷售外包、特殊的職能外包等 ......

    uj5u.com 2020-09-10 03:52:57 more
  • PHP漏洞之【整型數字型SQL注入】

    0x01 什么是SQL注入 SQL是一種注入攻擊,通過前端帶入后端資料庫進行惡意的SQL陳述句查詢。 0x02 SQL整型注入原理 SQL注入一般發生在動態網站URL地址里,當然也會發生在其它地發,如登錄框等等也會存在注入,只要是和資料庫打交道的地方都有可能存在。 如這里http://192.168. ......

    uj5u.com 2020-09-10 03:55:40 more
  • [GXYCTF2019]禁止套娃

    git泄露獲取原始碼 使用GET傳參,引數為exp 經過三層過濾執行 第一層過濾偽協議,第二層過濾帶引數的函式,第三層過濾一些函式 preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'] (?R)參考當前正則運算式,相當于匹配函式里的引數 因此傳遞 ......

    uj5u.com 2020-09-10 03:56:07 more
  • 等保2.0實施流程

    流程 結論 ......

    uj5u.com 2020-09-10 03:56:16 more
最新发布
  • 使用Django Rest framework搭建Blog

    在前面的Blog例子中我們使用的是GraphQL, 雖然GraphQL的使用處于上升趨勢,但是Rest API還是使用的更廣泛一些. 所以還是決定回到傳統的rest api framework上來, Django rest framework的官網上給了一個很好用的QuickStart, 我參考Qu ......

    uj5u.com 2023-04-20 08:17:54 more
  • 記錄-new Date() 我忍你很久了!

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 大家平時在開發的時候有沒被new Date()折磨過?就是它的諸多怪異的設定讓你每每用的時候,都可能不小心踩坑。造成程式意外出錯,卻一下子找不到問題出處,那叫一個煩透了…… 下面,我就列舉它的“四宗罪”及應用思考 可惡的四宗罪 1. Sa ......

    uj5u.com 2023-04-20 08:17:47 more
  • 使用Vue.js實作文字跑馬燈效果

    實作文字跑馬燈效果,首先用到 substring()截取 和 setInterval計時器 clearInterval()清除計時器 效果如下: 實作代碼如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta ......

    uj5u.com 2023-04-20 08:12:31 more
  • JavaScript 運算子

    JavaScript 運算子/運算子 在 JavaScript 中,有一些運算子可以使代碼更簡潔、易讀和高效。以下是一些常見的運算子: 1、可選鏈運算子(optional chaining operator) ?.是可選鏈運算子(optional chaining operator)。?. 可選鏈操 ......

    uj5u.com 2023-04-20 08:02:25 more
  • CSS—相對單位rem

    一、概述 rem是一個相對長度單位,它的單位長度取決于根標簽html的字體尺寸。rem即root em的意思,中文翻譯為根em。瀏覽器的文本尺寸一般默認為16px,即默認情況下: 1rem = 16px rem布局原理:根據CSS媒體查詢功能,更改根標簽的字體尺寸,實作rem單位隨螢屏尺寸的變化,如 ......

    uj5u.com 2023-04-20 08:02:21 more
  • 我的第一個NPM包:panghu-planebattle-esm(胖虎飛機大戰)使用說明

    好家伙,我的包終于開發完啦 歡迎使用胖虎的飛機大戰包!! 為你的主頁添加色彩 這是一個有趣的網頁小游戲包,使用canvas和js開發 使用ES6模塊化開發 效果圖如下: (覺得圖片太sb的可以自己改) 代碼已開源!! Git: https://gitee.com/tang-and-han-dynas ......

    uj5u.com 2023-04-20 08:01:50 more
  • 如何在 vue3 中使用 jsx/tsx?

    我們都知道,通常情況下我們使用 vue 大多都是用的 SFC(Signle File Component)單檔案組件模式,即一個組件就是一個檔案,但其實 Vue 也是支持使用 JSX 來撰寫組件的。這里不討論 SFC 和 JSX 的好壞,這個仁者見仁智者見智。本篇文章旨在帶領大家快速了解和使用 Vu ......

    uj5u.com 2023-04-20 08:01:37 more
  • 【Vue2.x原始碼系列06】計算屬性computed原理

    本章目標:計算屬性是如何實作的?計算屬性快取原理以及洋蔥模型的應用?在初始化Vue實體時,我們會給每個計算屬性都創建一個對應watcher,我們稱之為計算屬性watcher ......

    uj5u.com 2023-04-20 08:01:31 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:01:10 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:00:32 more