未來城市:AI計遊行人數求真

文章日期:2019年06月09日

【明報專訊】六四30年維園集會,主辦單位支聯會公布參與人數逾18萬,警方指高峰期有3.7萬人,「3萬7人,唔好玩我啦」,於是facebook網友Johnba Hco引用港大民意研究計劃(下稱POP)於2004年及2009年六四晚會評估的人口密度來估算,得出總人數為133,500至140,500人。

POP團隊所列密度是依據該年量度現場情况得出,若應用於今年晚會,或會影響精準度,但支聯會和警方都沒有公開詳細統計方法及數據,該帖文詳列計算方法,至少有根有據,被熱烈轉載背後,反映大眾還是希望有個真相。而有件事幾乎不會錯估,就是今天當大會及警方公布參加遊行的人數一刻,大眾仍會充滿質疑。

集會/唔郁 影像識別數人頭

在自由黨榮譽主席田北俊提出「反修例遊行人數重要」之際,一名在美國約翰霍普金斯大學(Johns Hopkins University)取得天文及物理博士學位、從事研究及編寫程式4年的香港青年羅先生開始構想,以AI計算人數,或更趨向真實。

專家學者的統計方式,都以人手計算,統計員不能無止境數人頭,因此會在某點採取:每5分鐘數1分鐘;數2分鐘休息2分鐘等形式工作,再以此推算在整場遊行時間內經過該點的人數。如果以機器代替人手來數,不必休息,就可每分鐘無間斷地數,得出更全面的數字。民間有討論,認為內地已發展到靠人臉辨識在張學友演唱會捉逃犯,用AI來為遊行人數提供更可信的數字,應該也可行?

台灣農民盧紀燁去年11月「把人頭當西瓜數」,示範以電腦影像識別技術為韓國瑜競選高雄市長一個造勢晚會計算人數,先用航拍機拍攝照片,再用電腦識別出一個個人,以紅圈圈出,稱結果得出1.2公頃內約有2萬人。

遊行/郁 動作追蹤保私隱

集會是靜態的,動態的遊行又怎樣?羅先生構想,「科技上如手機或相機的face detection(人臉檢測)技術已做得好好,可準確地數人,不過在遊行時就比較麻煩,因為不止人多,人們會舉橫額或其他物件,對分析有阻礙」,首先要克服的挑戰,是寫出可教電腦「怎樣才算一個人」的「演算法」(algorithm),「給它一些training data(訓練數據),告訴它要分析的短片會是怎樣,裏面有多少人,演算法就會自行調整,看看能否得出正確人數」。

從兩個不同角度拍攝

寫出演算法的時間,羅先生說要視乎是否有現存工具可作根據,若已有類似演算法,可能只用幾天修改調整就可試用;若要從頭編寫,因應效果再修正,則可長達數個月。最好的做法,「是在未有大遊行之前,到銅鑼灣拍片,然後調整演算法,亦可嘗試以不同角度拍攝,試出較好的角度。」拍攝影片供電腦認人,是否需要高清?「解像度視乎道路有多闊。如果同一個解像度,一張相影兩條行車線10個人平排,另一張相影4條行車線20個人平排,兩張相放大來看每一個人,第一張會較第二張清晰。我估計AI認人,只要目標有20 pixel闊、80 pixel高,就足夠分辨是不是人。另外不同遊行人士之間的光暗對比最好不要太大。如果左邊的人在太陽下,右邊的人在陰影下,難度可能會高一些,不過實際情况未必能容許我們選擇。」至於從高空拍還是與隊伍處於同一水平拍?拍攝時要留意的,是「最基本要看得出每個人是一個獨立個體。如果能從兩個不同角度拍攝,例如一個是30至45度角向下望,像一般遊行新聞照片;另一個垂直向下望,成功機會便較高。前者的優點是能看見五官,容易分辨出是人臉;後者的優點是背景簡單,灰色/homogeneous(同質)/static(靜態)的地面跟移動的人很不同。」

遊行/插隊人數 需記認更多特性

統計遊行人數多年的港大社會工作及社會行政學系教授葉兆輝擔心,人臉辨識或會引起私隱問題。羅先生解釋,計算人數可配合motion tracking(動作追蹤)的技術。如把拍攝範圍視為一個框,電腦可由一個人進框開始把他圈出,然後追蹤其移動直至出框,為之一人。原理是同一個人在時間緊接的兩個畫面只會移動一點點,「比如說當電腦在前一個frame(影格)圈出一個人,到後一個frame,圈的圓心距離若只差一個pixel,電腦就能分析那跟剛才是同一個object,如距離達20個pixel,電腦就知前格那個人不見了,出現的是新object」。如此電腦並不需要記認每個人的特性。不過如果「要更大野心」,計插隊人數,例如在銅鑼灣及灣仔兩個地點放置兩部電腦,需要互通資料追蹤同一人,由此得知兩點之間是否有新加入的人,便需要記認多些特性,「如衣服特點」,是否可做到這一步,他亦「不知技術夠不夠好」。

集網民力量 1人數1分鐘

羅先生亦設想另一方法,可召集大眾參與:編寫網頁,將遊行影片放上網,「曾有名為Galaxy Zoo的計劃,因天文學需要分辨不同種類的星系,雖可訓練AI模型做到一定成果,但有些情况還是人眼比電腦認得好,計劃集合網民力量,每人獲分幾十張照片,已能完成好幾百萬張。套用在遊行統計上,舉例遊行4小時(240分鐘)的話,每人幫手分析1分鐘,不難找到2400個人,同1分鐘有10個人數,可以cross check(互相驗證)。」這個方法的困難之處是「設計出好用、有效的介面」,例如如何讓計算者每看到一個人入框就按一下掣,或在畫面上把人圈出。

若遊行前已準備好演算法,羅先生說技術上可在拍片同時,連接電腦數算參加者,向傳媒提供即時數據。這是否比現場人手計算遊行人數更好?港大統計及精算學系副教授林國輝認為,「要看方法拿到的資料是否全面,如是否每個角度都影到,亦要看系統具體如何運作」,利用新科技「可取得更準確的數據」,「方法是一個合理的推斷,但如何執行是幾有趣的問題」,例如AI學習需要龐大數據庫,現有遊行數據恐不足夠發展出可靠的系統。

警方數字×1.4更接近真實

新科技能否幫得上忙,讓數字更接近真實?葉兆輝說:「只要有人是嚴肅看待這個問題,我們是歡迎的。」兩名學者更關心是遊行人數為何而數。葉兆輝早在2009年獲澳洲統計出版協會(Australian Statistical Publishing Association)刊登關於統計遊行人數的論文,當中以2006年七一遊行為例示範,已設計出有效的統計方法,但各方受立場影響而造成公佈數字有巨大差距。他批評「兜兜轉轉那麼多年,大家不嘗試面對現實」,「好多時媒體的問題是一有唔妥就很快質疑官方數字,但沒有人質疑大會數字」。「先旨聲明,我不是說警方一定對。據我理解,警方數人時只特別用作管理人流,在幾個位置都有人數,就每個位置最高人數作估算,問題是計不到插隊人數」。港大有POP及葉兆輝兩個團隊統計七一遊行人數多年,POP得出數字均與警方較為接近(圖),葉兆輝則稱考慮插隊人數,「將警方的數乘以1.2至1.4,就是較準的數目」。他說:「多年後回看,我提供了數字給媒體,就會有其他人說是否為政府背書,或說我是民主黨什麼人。我要澄清,數了十幾年,從沒受過團體的commission(委託)去做。」

林國輝說:「我關心執行的人是否夠獨立、有公信力,多於準不準的問題,因為很小的因素可令數據改變很大,如有政治立場做,扭曲少少,結果已相差很遠。重要是統計的機構能否解釋數字如何得出。」

警方/人數如何計?

本報向警方查詢上周六四晚會及4月28日反修例遊行的人數如何計算,以及「高峰」如何決定、時間為何,警方回覆是「派員於多個高點作出觀察,以及點算某一時段在不同區域所聚集的人數,從而評估參與集會的人數」,並稱「有關數字只供內部參考之用,警方不會主動公開」,又指評估集會人數只是「粗略估計數字」。警方說數字作內部之用,卻向公眾公開,那麼不公開上述資料的原因為何?警方在截稿前未有回應。

民陣/人數如何計?

至於民陣怎樣數?發言人岑子杰稱:「我們向來七一遊行都分幾組人在幾條天橋計人數,路面範圍有幾多人,再以通過的人流計算。」問及是次6月9日遊行統計是否交由專家統計,他稱:「就算找專家都要跟他傾,這個遊行不是年度舉辦的,今次真的沒有時間。」年度舉辦的七一又有沒有可能?他回應:「成個民陣現在放下七一,盡全力去處理引渡條例。我們只能一步步處理。」對六四晚會計出18萬人,支聯會副主席蔡耀昌解釋得比較詳細,「我們一直的評估,是維園各場區加通道容納的人數,估計有15至20萬人,今年大體上6個足球場、草地、籃球場、南亭廣場,以至草地北路南路,再加從天后興發街過來的通道,基本上都爆滿。而下午有雨,不少市民來到是站立的,場區密度比較高」,亦表示有糾察在不同場區觀察密度。說到可否公開統計詳細數據,他稱:「我們沒有辦法做到(公布)1+1+1這樣的算式」,「我們必須承認那是個粗略數字」,「在我們的角度是盡力評估,(各方數字及方法)比較就讓市民去做」。

公開統計方法及資料

以電腦數人,羅先生說難趕及在幾天內寫出演算法,是次遊行最可以做的,是先想辦法拍下影片,或「有他人拍到片,可以給大家分析,我也可以參與」。在他的設想中,完成計算後可公開影片讓其他人驗證,「把影片放出來,如數到有20萬人,其他人以人手數、寫個程式數都得,可以驗證,公信力就大些」。公開影片的私隱問題,羅先生提出可如Google街景把人臉遮掉,「但或會有人擔心,因為演算法可能自動遮到95%,如有人半塊臉被物件擋住,電腦認不出是人臉就遮不到」。林國輝認為將統計方法、資料公開,「當然最好,中立少少,在陽光底下進行,便冇得輸」。

【示威人數篇】

文 // 曾曉玲

圖 // 資料圖片

編輯 // 蔡曉彤

fb﹕http://www.facebook.com/SundayMingpao