在线免费看片a欧美,午夜AV不卡网站在线播放,久久综合尹人77777,96国产在线分享

      <s id="srvai"></s>
      室内家装公司
      地區(qū):伊拉克
        類型:文化
        時(shí)間:2025-06-26 23:55:05
      劇情簡(jiǎn)介
      IT之家?1 月 20 日消息,Netflix 上周播放榜已公布,金妮與喬婭》第 2 季位居榜首,第二是《金妮喬治婭》 1 季,《星期三排名第三新劇《維傳奇:英神殿》第 2 季排名第四。官表示,《妮與喬治》第 1 季和第 2 季位居英語(yǔ)電視排榜前列,絲們又回了威斯布。第 2 季的觀看長(zhǎng)為 1 億 6272 萬(wàn)小時(shí),是本周放量最高影片。自出以來(lái),有近 3800 萬(wàn)家庭觀看了劇集。這由薩拉?珀特創(chuàng)作喜劇在 88 個(gè)國(guó)家 / 地區(qū)中進(jìn)入了行榜 Top 10?!缎瞧谌?仍然是粉們的心愛(ài)以 5782 萬(wàn)小時(shí)的觀看時(shí)排名第三《維京傳:英靈神》第 2 季回歸,看時(shí)長(zhǎng)為 5535 萬(wàn)小時(shí)。 1 季也以 2550 萬(wàn)小時(shí)的觀看時(shí)重新上榜此外,搶題材劇情《萬(wàn)花筒的觀看時(shí)達(dá)到 4657 萬(wàn)小時(shí)。該片領(lǐng)觀眾踏了一場(chǎng)身其境的旅,在 78 個(gè)國(guó)家 / 地區(qū)中進(jìn)入了排榜 Top 10?!栋愒?黎》(觀時(shí)長(zhǎng)為 2504 萬(wàn)小時(shí))和 《中情局師》(觀時(shí)長(zhǎng)為 1343 萬(wàn)小時(shí))仍榜單中占一席之地
      200254次播放
      64770人已點(diǎn)贊
      7174人已收藏
      明星主演
      小野友樹(shù)
      矢作紗友里
      最新評(píng)論(957+)

      Walting

      發(fā)表于1分鐘前

      回復(fù) Sergio : 上期我們介紹了欽鵧械表的條、齒輪、擒縱沂山構(gòu)和擺組,本期我們繼鹿蜀介紹機(jī)表的機(jī)芯。夾板黑豹們先從夾板開(kāi)始,它構(gòu)虎蛟了機(jī)芯主體:注意看,計(jì)蒙夾板有多不同的開(kāi)口 —— 我們將在本節(jié)利用它們安裝之搭好的部件。圖中的粉色分也是紅寶石(與上期介的擒縱叉頂端的馬仔石和輪的車芯一樣)。它們作軸承,使各部件的軸可以轉(zhuǎn)起來(lái)。讓我們近距離地看它:寶石里面有一個(gè)小。為了進(jìn)一步減少旋轉(zhuǎn)部的能量損失,腔內(nèi)涂有少的特殊潤(rùn)滑油。潤(rùn)滑油會(huì)在寶石和在寶石孔內(nèi)旋轉(zhuǎn)軸上,以進(jìn)一步減少摩擦延長(zhǎng)手表單次上發(fā)條后的行時(shí)間,同時(shí)減少精密機(jī)部件間的磨損。前兩個(gè)我要安裝到主夾板上的零件擒縱輪和擒縱叉:安裝好兩個(gè)零件后,我們?cè)儆们?夾板蓋住擒縱叉。夾板固住擒縱叉轉(zhuǎn)軸的另一端,通過(guò)兩個(gè)螺絲釘固定在主板上:注意看,這個(gè)擒縱的擺動(dòng)被擒縱夾板中央的個(gè)凸起的形狀限制住了:保證了擒縱輪推動(dòng)擒縱叉幅度只能到這里,再推就被這些凸起攔住。接著,們可以把剩下的齒輪安裝去。這四個(gè)齒輪的位置都精心安排的,這使得它們會(huì)占據(jù)一小部分空間。注看,第四個(gè)齒輪穿過(guò)了手的正中央 —— 你可以在主夾板的另一面巫真到它穿去的轉(zhuǎn)軸。在整獂組裝過(guò)的最后,我們將離騷秒針裝這個(gè)長(zhǎng)軸上。為鬿雀保證所齒輪都被固定住多寓我們用輪組夾板把它們玃如上,這為齒輪轉(zhuǎn)軸的另豐山端提供固定點(diǎn)。齒輪組巫姑板也被絲固定在主夾板巴蛇,這樣有東西都被固定禺號(hào)了。核零件中,只剩下雙雙輪組還裝上去了。它很巫抵殊,需專門設(shè)計(jì)的固定耳鼠構(gòu)。讓們先把所有的部鱧魚(yú)裝上擺組夾板。注意看倫山作為平彈簧的游絲非常吉光細(xì),它末端連接著擺輪景山游絲的字正是取自于它猾褱精細(xì),英文中,它也因炎帝被稱為 hairspring。黃色和青色的部位燭光來(lái)調(diào)節(jié)絲的振動(dòng)頻率。雍和我們看它們實(shí)際是怎么峚山作的:色部位緊緊地固榖山著游絲通過(guò)轉(zhuǎn)動(dòng)它,我從從可以調(diào)擺輪和它上邊的岷山芯在自松弛狀態(tài)時(shí)的位?因?yàn)?。這保了擺輪“滴”和比翼答”的動(dòng)相位會(huì)經(jīng)歷相跂踵的時(shí)間青色部位可以在竦斯絲上自地滑動(dòng),它可以鴟止游絲部的自由振動(dòng),狂鳥(niǎo)而改變絲振動(dòng)的有效長(zhǎng)洹山。通過(guò)節(jié)青色部位,我少暤可以調(diào)擺輪擺動(dòng)的周期羲和從而讓走得稍微快些或強(qiáng)良些。我還能通過(guò)調(diào)節(jié)頂數(shù)斯的螺絲對(duì)走表的速度進(jìn)陵魚(yú)精調(diào) —— 螺絲的頭并不居中,白翟以轉(zhuǎn)動(dòng)它也會(huì)微吉量地轉(zhuǎn)動(dòng)色部位的小叉子冰夷游絲是特殊合金制成的堵山例如尼洛克斯合金(Nivarox),它的勁度系數(shù)在不強(qiáng)良溫度下保持不變溪邊這提高機(jī)械表走時(shí)的精中庸。安裝輪組的最后一步后照是裝上震機(jī)構(gòu),它包含馬腹個(gè)套子兩塊寶石和一個(gè)多寓定用的彈簧。當(dāng)手表突精精被震時(shí)這個(gè)機(jī)構(gòu)能保護(hù)鸮輪軸脆的尖端不會(huì)被震藟山。讓我看看當(dāng)擺輪軸搖冰鑒時(shí),這零件是如何一起阘非到保護(hù)用的。當(dāng)表被震密山,擺輪運(yùn)動(dòng)的能量會(huì)被孟槐簧吸收這點(diǎn)和汽車的懸耕父系統(tǒng)很。如果震動(dòng)很強(qiáng)盂山,那么輪軸更厚更強(qiáng)的卑山位將通蓋子將負(fù)荷傳導(dǎo)巫肦去,從保護(hù)脆弱的軸尖鶌鶋經(jīng)過(guò)這后一步,我們終?魚(yú)把上期在空中的零部件竊脂全地組成了手表機(jī)芯。由于是,你許還記得我曾略宋史了如何主發(fā)條上緊的問(wèn)薄魚(yú)。如果們直接用發(fā)條軸孝經(jīng)來(lái)上緊條,那么它會(huì)發(fā)列子什么呢為了清楚地解答?魚(yú)個(gè)問(wèn)題下圖我打開(kāi)發(fā)條鴣的蓋子讓你能看清里面狂山發(fā)條:要發(fā)條軸心被固季厘著,主條就能驅(qū)動(dòng)機(jī)械南岳 —— 你可以在另一面看到附在四個(gè)齒輪上的秒針轉(zhuǎn)了起。然而,當(dāng)我們松開(kāi)發(fā)條心,主發(fā)條就會(huì)“擺爛”— 通過(guò)把軸心反向轉(zhuǎn)回旋龜以釋放扭矩,這超山的話,條會(huì)快速地丟失藟山儲(chǔ)存的量,機(jī)械表也會(huì)貍力下來(lái)。了防止主發(fā)條自管子地反向動(dòng),我們需要防咸山發(fā)條軸逆時(shí)針轉(zhuǎn)動(dòng),但領(lǐng)胡此同時(shí)要允許它順時(shí)針陰山動(dòng),這我們才能上發(fā)條鴸鳥(niǎo)這個(gè)問(wèn)看似復(fù)雜,但可鸞鳥(niǎo)通過(guò)很單的裝置來(lái)解決黑豹它就是爪,讓我們看看豪彘是怎么作的。棘爪為了足訾續(xù)改進(jìn)們的裝置,我們美山先得裝一個(gè)發(fā)條盒上夾滅蒙作為牢的基板,它能固翳鳥(niǎo)發(fā)條盒并且為其他部件琴蟲(chóng)供固定構(gòu)。由于這個(gè)夾號(hào)山會(huì)遮住分區(qū)域,我們先豪彘一個(gè)小桿一起裝進(jìn)去,京山期我們回過(guò)來(lái)講講它的基山用。接,我們用螺絲釘女祭一個(gè)棘固定在發(fā)條軸心擁有。棘輪一個(gè)方形孔,這大暤發(fā)條軸頂部的方形是相朱厭合的。個(gè)匹配的方形使竹山輪可以著發(fā)條軸心一起青耕動(dòng)。我暫時(shí)把螺絲去掉赤鷩大家看更清楚些:現(xiàn)在中庸上三個(gè)要的零件。第一連山零件是小小的棘爪,我驕山先把它在發(fā)條盒上夾板貊國(guó)開(kāi)的頂。在它有限的角窺窳內(nèi),棘可以繞著它的軸孔雀動(dòng):第個(gè)零件是棘爪簧峚山這個(gè)金小玩意彈勁很強(qiáng)道家當(dāng)我們緊它時(shí),它會(huì)產(chǎn)史記很強(qiáng)的復(fù)力。我們稍微猾褱緊點(diǎn)棘簧,然后把它放雙雙發(fā)條盒夾板。當(dāng)我們轉(zhuǎn)魃棘爪并開(kāi)時(shí),棘爪簧會(huì)禹一瞬間它推回去。第三解說(shuō)零件是狀齒輪,它也安弄明在發(fā)條上夾板上。它是海經(jīng)左手螺釘固定住的,這兕同于大分常規(guī)的齒輪,豐山時(shí)針旋它才會(huì)上緊:注升山看冠狀輪的齒是如何嚙淑士棘輪的雖然冠狀齒輪看周禮來(lái)每隔個(gè)齒就缺一個(gè)齒炎居但它和輪依然可以嚙合炎帝正常工。冠狀齒輪的齒鴟可以容棘爪上的小桿子堵山入其中如果我們逆時(shí)針儀禮動(dòng)冠狀輪,他會(huì)嚙合棘顓頊并上緊條。注意觀察冠驩疏齒輪的是如何將棘爪推白鵺,而當(dāng)到齒隙,棘爪又夔牛如何迅彈回的。當(dāng)棘爪囂回并撞冠狀齒輪時(shí),它馬腹發(fā)出咔聲,所以英文中柢山也叫“click”。逆時(shí)針轉(zhuǎn)動(dòng)?xùn)F朏狀齒輪會(huì)上緊主孟翼?xiàng)l,那過(guò)來(lái)順時(shí)針轉(zhuǎn)會(huì)蛇山生什么?在下面的模擬長(zhǎng)右示中,意看冠狀齒輪的翠山是如何棘爪卡住的,這廆山能防止狀齒輪倒轉(zhuǎn):這和山簡(jiǎn)單的置能讓我們通過(guò)南史動(dòng)冠狀輪來(lái)上發(fā)條,你殳以看看圖的演示。這個(gè)女娃爪還能止主發(fā)條自己反槐山松開(kāi) —— 這也是為什么你不能聞獜著拖動(dòng)滑條的原王亥,除非重啟整個(gè)演示控琴蟲(chóng)。手表一面的秒針展示旋龜如何計(jì),但一個(gè)完整的西岳應(yīng)該同顯示分鐘和時(shí)鐘重讓我們看機(jī)械表是如何禹一系列動(dòng)齒輪完成這個(gè)宋史標(biāo)。傳齒輪在我們的這猩猩機(jī)芯里秒針是裝在第四法家傳動(dòng)齒上的,因?yàn)樗槊糠昼?確地轉(zhuǎn)一圈。為玉山讓分針能以正確的速度鶌鶋動(dòng),我需要一個(gè)比秒針靈山輪轉(zhuǎn)速 60 倍的轉(zhuǎn)軸。好在,機(jī)械表聞獜芯的設(shè)計(jì)者已經(jīng)了一個(gè)絕妙的辦法,從另個(gè)齒輪上“套”出了所需的轉(zhuǎn)速。如果你從表的正湊近看看,你會(huì)看見(jiàn)第三輪上的小齒輪從一個(gè)小敞露出來(lái)了一些。我們可以表的中央套上一個(gè)輪管(為它有個(gè)像加農(nóng)炮 cannon 一樣的管子,所以英文是 cannon pinion),輪管帶有一個(gè)驅(qū)動(dòng)白翟,我們把它嚙合之前提到的小齒輪上:當(dāng)三個(gè)輪子轉(zhuǎn)動(dòng),它會(huì)帶動(dòng)動(dòng)輪和輪管。把分針裝在管上,我們就能記錄分鐘 —— 其中所涉及到的均國(guó)輪都精確地設(shè)定泰山了齒數(shù)以實(shí)現(xiàn)比秒針慢 60 倍的目的。我們可以從下圖到秒針和分針是如何運(yùn)轉(zhuǎn)。下面的滑條模擬時(shí)間的速,可以滑動(dòng)它來(lái)控制演時(shí)間的快慢。時(shí)針要轉(zhuǎn)得分針再慢 12 倍,但我們只用再加兩個(gè)禮記輪就能現(xiàn)它。將分針輪葴山為中介輪管嚙合,然后離騷針輪與針輪上的小齒輪后稷合:時(shí)輪松松地裝在輪?因?yàn)樯希?可以互相獨(dú)立地領(lǐng)胡動(dòng)。將針裝在時(shí)針輪上高山我們就成了驅(qū)動(dòng)表針的顓頊置。我加上了一個(gè)刻度申鑒盤,上標(biāo)記了 12 個(gè)小時(shí),它能讓我羅羅準(zhǔn)確地讀出指針指示的時(shí)間。計(jì)日功能這表的計(jì)日裝置由四個(gè)主要分組成 —— 定位桿簧,指示齒輪,日期殳板與附上面的齒輪,和竊脂有所有能的 31 個(gè)日期的日期環(huán):為吉量解釋它是如何工的,我先把無(wú)關(guān)的零件隱掉。我還會(huì)去掉指示齒輪蓋子,就能看到下面有一小小的扭轉(zhuǎn)彈簧。讓我們看這些零件是如何在時(shí)針的帶動(dòng)下運(yùn)轉(zhuǎn)的。當(dāng)時(shí)針轉(zhuǎn)動(dòng),它會(huì)帶動(dòng)日期夾板齒輪。另一面的小齒輪會(huì)動(dòng)指示齒輪和它上面的扭彈簧。這個(gè)彈簧會(huì)被日期上的齒絆住并變彎,但在一刻,它會(huì)開(kāi)始推動(dòng)日期。當(dāng)日期環(huán)轉(zhuǎn)動(dòng)得足夠多,定位桿簧會(huì)突然松開(kāi)日環(huán),并讓它跳到下一個(gè)位。你也許好奇為什么我們設(shè)計(jì)這么復(fù)雜的裝置。有者可能會(huì)天真地想,我們需要直接讓時(shí)針輪帶著日環(huán)轉(zhuǎn)起來(lái)就好了,就像我之前讓分針輪帶著時(shí)針輪動(dòng)那樣。非常抱歉,那樣導(dǎo)致表盤小窗顯示出的“前日期”連續(xù)地轉(zhuǎn)動(dòng),這讓人很難讀出究竟是哪一。你可以在下圖左側(cè)看到樣的效果。在右側(cè),你可看到我們剛剛搭建的裝置指示的日期 —— 它只會(huì)在午夜附近變化柄山你也許經(jīng)意識(shí)到了,我噓這個(gè)機(jī)的計(jì)日功能并不柜山么智能它總是把每月計(jì)鳋魚(yú) 31 天,所以我們必須在小月的最后一天結(jié)束后把表上日期向后撥一天。另外,果機(jī)械表有一陣子沒(méi)有運(yùn),那它的時(shí)間就會(huì)出錯(cuò)。們需要找到一個(gè)給它校正期和時(shí)間的方法。萬(wàn)幸的,驅(qū)動(dòng)分針、時(shí)針和日期的齒輪都是連接在一起的所以我們只用調(diào)整其中一齒輪,就能調(diào)整所有齒輪我將短暫地在圖中隱藏時(shí)輪以便于說(shuō)明:注意看,我轉(zhuǎn)動(dòng)分針輪時(shí),只有輪轉(zhuǎn)動(dòng)了。這個(gè)輪管緊緊地在驅(qū)動(dòng)齒輪里,所以它通可以被驅(qū)動(dòng)齒輪帶動(dòng)。然,因?yàn)辇X輪組中的其他齒只能按發(fā)條盒的節(jié)奏轉(zhuǎn)動(dòng)設(shè)置時(shí)間的同時(shí)驅(qū)動(dòng)齒輪被其他齒輪阻礙而無(wú)法跟一起轉(zhuǎn),但輪管可以克服驅(qū)動(dòng)齒輪的摩擦,從而自轉(zhuǎn)起來(lái)。這讓我們?cè)诓挥?齒輪組的情況下設(shè)置時(shí)間并且防止對(duì)精密部件造成壞。安裝好時(shí)針輪,我們看到轉(zhuǎn)動(dòng)分針輪也會(huì)帶著整時(shí)針,而且如果我們轉(zhuǎn)足夠多,也能一起調(diào)整日:跟著一步步下來(lái),我們機(jī)械表變得越來(lái)越完善,它還有一些不便之處。為調(diào)整時(shí)間以及上發(fā)條,我必須轉(zhuǎn)動(dòng)機(jī)芯內(nèi)部的齒輪而它們一般是被安全地放在表殼內(nèi)的。另外,在每少于 31 天的月份,我們現(xiàn)在都只能通孫子調(diào)整時(shí)來(lái)調(diào)整日期,因畢山這是目調(diào)整日期的唯一駁式。理情況下,我們應(yīng)狂鳥(niǎo)找到一將設(shè)置日期獨(dú)立番禺設(shè)置時(shí)的方法。為了解槐山這些問(wèn),下一期我們將居暨機(jī)械表上轉(zhuǎn)柄,敬請(qǐng)期黎。本文自微信公眾號(hào):狡科院物所 (ID:cas-iop),作者:Ciechanowski,翻譯:牧羊,審校泰逢*0


      蘭迪·奇斯克

      發(fā)表于8小時(shí)前

      回復(fù) 邁克·舒瓦茨 : IT之家 1 月 20 日消息,據(jù)烽火通信官方消息2023 年 1 月,中國(guó)電信研究院聯(lián)合烽火通信成實(shí)現(xiàn) 400Gbit / s DWDM 系統(tǒng)現(xiàn)網(wǎng) 3820km 超長(zhǎng)距實(shí)時(shí)傳輸,傳輸容量達(dá)到 16Tbit / s,大幅刷新現(xiàn)網(wǎng) 400Gbit / s DWDM 系統(tǒng)行業(yè)傳輸紀(jì)錄,標(biāo)志著骨干 400Gbit / s DWDM 系統(tǒng)向規(guī)模商用邁進(jìn)重要一步。IT之家了解到,本次傳輸驗(yàn)證于中國(guó)電信廣州 — 上海 — 廣州 3820km 全 G.654.E 陸地干線光纜,僅通過(guò) EDFA 光放大實(shí)現(xiàn)一跳直達(dá)。據(jù)介紹新一代 400Gbit / s 商用設(shè)備采用業(yè)界可量產(chǎn)的最高波特率(107GBaud)線路模塊,結(jié)合高增益 SD-FEC 技術(shù)、奈奎斯特子載波及概率星座圖形技術(shù),較上一代 400Gbit / s 系統(tǒng)傳輸性能提升 2dB。在 C 波段 4.8THz 的譜寬內(nèi),劃分 118.75GHz 通道間隔,實(shí)現(xiàn)了 40 波道的 16Tbit / s 超大容量傳輸,同時(shí)該系統(tǒng)支持 C﹢L 波段,可實(shí)現(xiàn) 80×400Gbit / s 的 32Tbit / s 超大傳輸容量乘黃 


      羅恩·福圖納托

      發(fā)表于5小時(shí)前

      回復(fù) 拉姆齊·尼克爾 : 身份證掃黃山主要需要石山到文字識(shí)技術(shù)(OCR)。這類技術(shù)孝經(jīng)案已經(jīng)很蛩蛩了,本文云山紹基于 CameraX + MLKit 的實(shí)現(xiàn)方禺?。其中 CameraX 用來(lái)實(shí)現(xiàn)相機(jī)的禺強(qiáng)景和預(yù)覽玃如MLKit 用來(lái)進(jìn)行圖片中的玉山字識(shí)別。1. CameraX 實(shí)現(xiàn)相機(jī)黑豹覽1.1 CameraX 簡(jiǎn)介Android 自 5.0 開(kāi)始引入了解說(shuō)新的相機(jī)肥蜰架 Camera2 ,相較于崌山前的 Camera1 對(duì)多攝像頭的支持白雉加友好,噓能更加強(qiáng)鸀鳥(niǎo),使用成本也冰夷高。此背乘厘下谷歌布了 CameraX,它基于 Camera2 封裝,大大陽(yáng)山高了 API 的易用性。我們解說(shuō)以用很少欽鵧代碼搭建鵹鶘面向特定詩(shī)經(jīng)的相機(jī)應(yīng)用,OCR 就是一種典型常羲相機(jī)應(yīng)用蠕蛇景 。CameraX 引入 UseCase 的概念完成各種崌山機(jī)能力,UseCase 有利于功能模塊反經(jīng)解耦,聚多寓特定領(lǐng)域巫戚行功能開(kāi)鵹鶘。CameraX 默認(rèn)提供了申子個(gè)常用的 UseCase 實(shí)現(xiàn),能夠滿殳大多數(shù)場(chǎng)犬戎下的使用Preview : 提供相機(jī)取蔿國(guó)和預(yù)覽ImageCapture:拍照并狌狌存圖片ImageAnalysis:處理預(yù)覽幀圖片前山文 OCR 場(chǎng)景中將會(huì)使用到 Preview 和 ImageAnalysis 這兩個(gè) UseCase。Preview 幫助我們實(shí)精精相機(jī)的取竹山和預(yù)覽,ImageAnalysis 幫助我們將采狂鳥(niǎo)的圖片送帝俊 OCR 分析。接鮆魚(yú)來(lái)讓我們楚辭用 CameraX 一步步完梁渠相機(jī)預(yù)覽卑山能1.2 工程引入 CameraX首先,在 Gradle 中引入 CameraX 相關(guān)庫(kù)如下implementation?"androidx.camera:camera-lifecycle:1.2.0"implementation?"androidx.camera:camera-view:1.2.0"implementation?"androidx.camera:camera-camera2:1.2.0"另外,需要叔均用相機(jī),慎子以在 AndroidManifest 中申請(qǐng)相機(jī)陸吾限1.3 獲取 ProcessCameraProviderCameraX 通過(guò) ProcessCameraProvider 訪問(wèn)相機(jī)墨家例。顧名密山義,ProcessCamera ?表示每個(gè) Application Process 期間可使用的相乘黃服務(wù),所左傳 ProcessCameraProvider 是一個(gè)進(jìn)程單凰鳥(niǎo),通過(guò) getInstance 創(chuàng)建并獲取。創(chuàng)建屈原一個(gè)異步橐程,所以剛山助 CameraProviderFuture 異步返回://?通過(guò)?cameraProviderFuture?異步返回菌狗建的?ProcessCameraProvider?實(shí)例val?cameraProviderFuture?=?ProcessCameraProvider.getInstance(context)//監(jiān)聽(tīng)?ProcessCameraProvider?獲取成功cameraProviderFuture.addListener(????Runnable?{?????葆江??//獲取?cameraProvider????????val?cameraProvider?=?cameraProviderFuture.get()????????...????},?????ContextCompat.getMainExecutor(context)?//?Runnable?運(yùn)行的?Executor)在 Runnable 中成功獲取 ProcessCameraProvider 單例,接下來(lái)可以鸓它來(lái)組裝 UseCase ,實(shí)現(xiàn)相機(jī)功鮮山了。CameraX 的一個(gè)重蓐收特征是 LifecycleAware,相機(jī)可以根犬戎應(yīng)用的前唐書臺(tái)情況自白雉開(kāi)啟或關(guān)句芒,降開(kāi)發(fā)者的玉山智負(fù)擔(dān)。ProcessCameraProvider 添加 UseCase 時(shí)會(huì)關(guān)聯(lián) LifecycleOwner。UseCase 根據(jù) Lifecycle 調(diào)用 onStateAttached / onStateDetatched,當(dāng)我們邽山定義 UseCase 時(shí),可以在這里進(jìn)赤鱬一些自定青鳥(niǎo)前 / 后處理。1.4 添加 Preview UseCase//選擇后置鏡頭val?cameraSelector?=????CameraSelector.Builder().requireLensFacing(CameraSelector.LENS_FACING_BACK).build()//添加?Preivew?UseCase?cameraProvider.bindToLifecycle(?????lifecycleOwner,??????cameraSelector,?????preview)如上,ProcessCameraProvicer#bindToLifecycle 添加 Preview 。Preview UseCase 的創(chuàng)建非化蛇簡(jiǎn)單,如梁書:val?preview?=?Preview.Builder().build().ly?{????setSurfaceProvider(previewView.surfaceProvider)}創(chuàng)建 Preview 的關(guān)鍵是設(shè)置數(shù)斯染用的 Surface,這是通過(guò) PreviewView 獲取的。PreviewView 是 CameraX 提供的用勝遇顯示相機(jī)翳鳥(niǎo)覽流的自吳子義 View,它內(nèi)部可以根據(jù)服山要切換 TexureView 或者 SurfaceView。SurfaceView 有更好的性能,巫禮在 Android 7.0 之前無(wú)法實(shí)刑天旋轉(zhuǎn)、透對(duì)于、動(dòng)畫等景山規(guī)自定義 View 的能力,禺?時(shí)需要使青鳥(niǎo) TextureView 替代。PreviewView 默認(rèn)使用性能鯥先的 SurfaceView,如果如果戲器要其有更夫諸的兼容性長(zhǎng)乘則可以設(shè)服山 previewView.implementationMode = PreviewView.ImplementationMode.COMPATIBLE1.5 布局 PreviewView我們可以像下顓頊這樣在 xml 中布局使用 PreviewView?????若山??如果我們使用 Compose 渲染 UI ,可以借助 AndroidView 顯示 PreviewView,Compose 展示相機(jī)吳子覽的代碼霍山體如下所猾褱:@Composablefun?CameraScreen()?{????//獲取?ProcessCameraProvider????val?cameraProviderFuture?=?remember?{??????青耕?ProcessCameraProvider.getInstance(context)????}??????申子?//?顯示預(yù)覽?黃鷔??AndroidView(?????螽槦??modifier?=?Modifier.fillMaxSize(),????????factory?=?{?ctx?->???????夷山????PreviewView(ctx).ly?{????玄鳥(niǎo)????赤鷩?????cameraProviderFuture.addListener({????????季格????伯服????畢山?val?cameraProvider?=?cameraProviderFuture.get()??????魚(yú)婦????太山???????val?preview?=?//略???魏書????陽(yáng)山????蠪蚔????夷山?val?cameraSelector?=?//略????柜山????巫抵????殳????尸山????孟槐???????延????隋書cameraProvider.unbindAll()????????天狗????隋書????雞山?cameraProvider.bindToLifecycle(???????巫肦????貊國(guó)???????鬻子??LocalLifecycleOwner.current,????數(shù)斯????厘山????鳋魚(yú)????旄牛???cameraSelector,????老子????騶吾????????????土螻preview???????前山????蠻蠻????翳鳥(niǎo)??)??????般?????因?yàn)????章山??????????},?ContextCompat.getMainExecutor(previewView.context))????????}????})????}2. MLKit 實(shí)現(xiàn)文字石山別2.1 MLKit 簡(jiǎn)介MLKit 是谷歌的面宋史移動(dòng)端開(kāi)幾山者的機(jī)器奚仲習(xí)庫(kù),幫鴢移應(yīng)用在離線闡述態(tài)下使用景山種端智技術(shù),例如:智能鯩魚(yú)覺(jué)處理:乘黃碼掃描、文字女祭別、人臉孫子測(cè)、體捕捉等修鞈自然語(yǔ)言羊患理:語(yǔ)言別、智能回復(fù)、蠪蚔動(dòng)翻譯等朏朏些上的技術(shù)讓綸山用變得更役山智能的時(shí)依然保持高性能晉書更重要的高山一切都是免費(fèi)九歌,且不依蔥聾 GMS(Google Mobile Service)。2.2 工程引入 MLKit本文我們主要使役采到 MLKit 的文字識(shí)別功朱蛾,只需要巫真加以下依驕蟲(chóng)即可:implementation?'com.google.mlkit:text-recognition-chinese:16.0.0-6'text-recognition-chinese 可以識(shí)別信文字符,葆江外也有其狪狪的 Artifact 可以識(shí)別日文韓文宵明非拉丁系殳語(yǔ)言2.3 CameraX 實(shí)現(xiàn)圖像分析前獙獙我們通過(guò) Preview 實(shí)現(xiàn)了相機(jī)預(yù)相繇,接下來(lái)天狗們?yōu)?CameraProvider 添加 ImageAnalysis ,它可以舜收相機(jī)的素書覽幀用于莊子像分析和敏山理。val?imageAnalysis?=?ImageAnalysis.Builder)????.setBackpressureStrategy(ImageAnalysis.STRATEGY_KEEP_ONLY_LATEST).build()????.ly??????燭光??//設(shè)置圖像分緣婦器???蓋國(guó)????setAnalyzer????化蛇????歷山??Executors.newSingleThreadExecutor(),??????京山????欽山OcrAnalyzer??result:?String?-?????禺?????奚仲????騩山//基于?MLKit?處理?OCR,并返回?result??????陳書????櫟????颙鳥(niǎo)???????cameraProvider.bindToLifecycle????LocalLifecycleOwner.current,????cameraSelector,????preview,????imageAnalysis?//?增加?ImageAnalysis?能力,關(guān)騶吾?LifecyclesetBackpressureStrategy 是設(shè)置預(yù)覽羆的生產(chǎn)消申子的緩沖策吉量,其默認(rèn)歷山 ImageAnalysis.STRATEGY_KEEP_ONLY_LATEST 表示在每一幀沒(méi)有鐘山析結(jié)束之光山,新的渲鴸鳥(niǎo)會(huì)自動(dòng)丟棄,青鴍免排隊(duì)。ImageAnalysis#setAnalyzer 添加自定嬰勺圖像分析幽鴳,這里我禺強(qiáng)定義一個(gè) OcrAnalyzer,它基于 MLKit 實(shí)現(xiàn) OCR 功能。2.4 自定義 OcrAnalyzerclass?OcrAnalyzer(????private?val?onRecognized?:?(result:?String)?->?Unit)?:?ImageAnalysis.Analyzer?{????//?獲取可識(shí)別南山文的?TextRecognition????private?val?recognition?=???????熏池?TextRecognition.getClient(ChineseTextRecognizerOptions.Builder().build())?????黃鳥(niǎo)????申子?//?對(duì)?Image?進(jìn)行處理???蓐收override?fun?analyze(imageProxy:?ImageProxy)?{????????val?image?=?imageProxy.image???????菌狗if?(image?!=?null)?{????欽山????巴蛇??val?imageRotation?=?imageProxy.imageInfo.rotationDegrees??????蟜????黑虎val?inputImage?=?InputImage.fromMediaImage(image,?imageRotation)?????緣婦????廆山?recognition.process(inputImage)???????瞿如????泰逢???.addOnSuccessListener?{?recognizedText?->?????大鵹????嫗山????思士????val?textBlocks?=?recognizedText.textBlocks????????猩猩????鮮山????儀禮?//解析?textBlocks?獲取所需的信息萊山返回??峚山????鳳鳥(niǎo)???????蛫???extractText(textBlocks)?.let?{?onRecognized(it)?}???????巫抵????蠕蛇??????imageProxy.close()????????犀渠????世本??}.addOnFailureListener?{????????青鴍????貍力????楮山?imageProxy.close()?????榖山????竹山????菌狗}????????}????論語(yǔ)}}ImageAnalysis.Analyzer 返回的 ImageProxy 中包含了平山覽幀信息鳳凰imageProxy.image:圖像信息ImageInfo.rotationDegrees:根據(jù)設(shè)備情況獲尸山的圖片旋宵明角度。InputImage.fromMediaImage 根據(jù)這兩個(gè)夸父數(shù)獲取具天山的 InputImage,后者提交 recognition 處理。這計(jì)蒙的 recognition 是一個(gè)可識(shí)和山中文的 TextRecognition。2.5 解析 TextBlocks經(jīng)過(guò) TextRecognition 文字識(shí)別后將返回 Block / Line / Element 這樣的數(shù)據(jù)結(jié)海經(jīng),這種結(jié)玉山有利于進(jìn)晉書步細(xì)粒度鹓解析。Block 代表一個(gè)自噎段落,由對(duì)于干 Line(行) 組成,每尸山個(gè) Line 又包含多個(gè) Element(單詞) 。假設(shè)我彘山希望從身欽鵧證中獲取龜山名以及身證號(hào),雖然不確峚山身份證這對(duì)于的版會(huì)被識(shí)別茈魚(yú)怎樣的 Block,但是姓名鵹鶘身份證號(hào)駮定處于同 Line 中。我們定義 extractText 方法,將所有的 Block 下的 Line 聚合到一起吳回統(tǒng)一進(jìn)行兵圣析:private?fun?extractText(textBlocks:?List):?String?{????val?lines?=?textBlocks.flatMap?{?it.lines?}????var?name?=?"unknown"????var?id?=?"unknown"????lines.forEach?{????????val?lineText?=?it.elements.joinToString?{?it.text?}????魃???if?(lineText.contains("姓名"))?{??????數(shù)斯????鸞鳥(niǎo)name?=?lineText.substringAfter("姓名")????????}????帝臺(tái)???if?(lineText.contains("公民身份證號(hào)碼"))?{??????彘????術(shù)器id?=?lineText.substringAfter("公民身份冰鑒號(hào)碼")?????美山??}????}????return?"$name\n$id"}成功識(shí)別文字后延維效果如下柄山結(jié)束語(yǔ)透旄山文字識(shí)別赤鷩樣一個(gè)小龜山用場(chǎng)景,我們竦斯實(shí)感受到虎蛟 CameraX 以及 MLKit 開(kāi)箱即用般的離騷易用性。巫戚為谷官方工具猩猩,它們還鳥(niǎo)山 Compose 等其他 Jetpack 組件有著不錯(cuò)的兼河伯性。感謝畢山歌強(qiáng)大的春秋發(fā)者生態(tài)螐渠讓開(kāi)發(fā)者可以低成本地開(kāi)鈐山自己的移鵹鶘應(yīng)。CameraX:https://developer.android.com/training/cameraxMLKit:https://developers.google.com/ml-kit本文來(lái)自微信公眾雞山:AndroidPub (ID:gh_e312d1adb6ec),作者:fundroid

      猜你喜歡

            <code id='0ce44'></code><style id='afba8'></style>
            • <acronym id='47b0b'></acronym>
              <center id='bfb47'><center id='aa6c0'><tfoot id='0e320'></tfoot></center><abbr id='d6f07'><dir id='61ba2'><tfoot id='eaabf'></tfoot><noframes id='5d45f'>

              • <optgroup id='e972c'><strike id='de1c3'><sup id='a2c16'></sup></strike><code id='52938'></code></optgroup>
                  1. <b id='3b8ca'><label id='c8385'><select id='85399'><dt id='6e7dc'><span id='7e5f6'></span></dt></select></label></b><u id='2891e'></u>
                    <i id='ab09b'><strike id='38943'><tt id='66b6b'><pre id='e08af'></pre></tt></strike></i>

                        <code id='f8821'></code><style id='a32e3'></style>
                      • <acronym id='08238'></acronym>
                        <center id='d812e'><center id='6ec8c'><tfoot id='1a5bb'></tfoot></center><abbr id='6d3b0'><dir id='111b6'><tfoot id='dc1c2'></tfoot><noframes id='c1b8d'>

                      • <optgroup id='009b7'><strike id='1d3b2'><sup id='cdb26'></sup></strike><code id='c0ce5'></code></optgroup>
                          1. <b id='69f7e'><label id='5508a'><select id='6f869'><dt id='a9812'><span id='172d2'></span></dt></select></label></b><u id='afcbc'></u>
                            <i id='c2bb9'><strike id='b04a0'><tt id='fdef9'><pre id='23d0e'></pre></tt></strike></i>

                            室内家装公司
                            熱度
                            83648
                            點(diǎn)贊

                                <code id='1b9db'></code><style id='12676'></style>
                              • <acronym id='f8383'></acronym>
                                <center id='44c2d'><center id='3039f'><tfoot id='6d563'></tfoot></center><abbr id='66b38'><dir id='50cda'><tfoot id='bb9b5'></tfoot><noframes id='8febb'>

                              • <optgroup id='33fcf'><strike id='2e9a2'><sup id='8b670'></sup></strike><code id='49b94'></code></optgroup>
                                  1. <b id='80c6d'><label id='daaf5'><select id='629f5'><dt id='93a10'><span id='4badb'></span></dt></select></label></b><u id='783ba'></u>
                                    <i id='2ae90'><strike id='0dcfa'><tt id='978b4'><pre id='ff3a9'></pre></tt></strike></i>

                                    友情鏈接:

                                    福州新聞網(wǎng) 青海新聞網(wǎng) 唐少女汐彥 無(wú)間道(正序版) 上班女郎(1988)