İqiyi ZoomAI video geliştirme teknolojisi uygulamasının ayrıntılı açıklaması | milyonlarca insan AI öğreniyor

Dingdong ~ Refah tarafından vuruldun! Şu andan itibaren, "2020 AI Developer Ten Thousands Conference" için 299 bilet ücretsiz olarak verilecek! Kayıt sayfasına girin [2020 AI Geliştirici On Bin Kişi Konferansı (Çevrimiçi Canlı Biletler) -IT Eğitimi Canlı-CSDN Akademisi], "Şimdi kaydolun" u tıklayın, ödeme sırasında "AIP1410" indirim kodunu kullanın ve fiyat "0" yuan olacaktır !

Misafir | Jiang Zidong

Organize | suiling

Üretildi | AI Teknolojisi Ana Kampı (Genel Hesap Kimliği: rgznai100)

Günümüzde çeşitli video programlarını izlemek bir eğlence ve boş zaman yolu haline geldi.Teknolojinin ilerlemesi ve İnternet hızının yükseltilmesi görsel zevkimizi artırdı, ancak her zaman görüntü titremesi ve eski filmlerin / TV dizilerinin rengi gibi bazı durumlarla karşılaşacaksınız. Dim; kullanıcılar sınırlı bant genişliğine sahiptir ve düşük oran modunu seçer; UP master tarafından yüklenen videoların / kısa videoların kalitesi kontrol edilemez, vb. Peki, kullanıcılara daha yüksek kaliteli video içeriği sağlamak için teknoloji nasıl optimize edilir?

İQiyi'de kıdemli bir algoritma mühendisi olan Bay Jiang Zidong, yakın zamanda yapay zeka teknolojisi temel kamp platformunda açık bir sınıf "iQiyi'nin ZoomAI Video Geliştirme Teknolojisinin Uygulaması" nı paylaştı. Bu kurs sayesinde, yapay zeka algoritmalarının görüntü geliştirme ve iQIYI iş alanındaki uygulamalarını anlayabileceksiniz; süper çözünürlük, renk geliştirme ve çizik giderme gibi derin öğrenme modellerinin teknolojik evrimini ve ayrıca mühendislik zorlukları ve çözümlerini anlayacaksınız. .

Ders oynatımını görüntülemek için kodu tarayın

Aşağıdaki, öğretmen Jiang Zidongun konuşmasının bir kaydıdır.

Herkese iyi akşamlar! Ben, iQiyi'den bir algoritma mühendisi olan Jiang Zidong ve bugünkü etkinliğe katılmaktan onur duyuyorum. Ayrıca herkesi bu ZoomAI video geliştirme teknolojisi paylaşımına katılmaya davet ediyorum. Bu aynı zamanda iQiyi'deki ana işlerimden biri.

Bu paylaşımın muhtemelen şu dört yönü olacaktır:

Öncelikle, bu teknolojinin arka planı ve neden video geliştirmeye ihtiyacımız var?

İkinci olarak, çeşitli geliştirme tekniklerinin ilkelerini, akademi dünyasındaki en son makalelerin tanıtımı ve kendi düşünce ve girişimlerimizden bazıları dahil olmak üzere videolarda veya görüntülerde tanıtıyoruz.

Üçüncüsü, iQiyi ZoomAI teknolojisi çerçevesini ve çeşitli iş kollarında uygulanmasını tanıtın.

Dördüncü olarak, bazı referans materyallerinin özetini ve açıklamasını paylaşın.

1. Video / görüntü geliştirme teknolojisinin önemi ve mevcut durumu

Şimdi ilk olarak neden video geliştirme istediğimize bakıyoruz. Geçen yıldan bu yana, video endüstrisinin "Ultra HD Çağı" na girdiği konusunda herkes bir fikir birliğine vardı. Geçtiğimiz yıl, CCTV ayrıca bir 4K ultra yüksek çözünürlüklü TV kanalı başlattı. Piyasadaki donanım ürünlerinin temelde standart olarak ultra HD veya 4K olduğunu göreceğiz. TV ekranları, set üstü kutuları, VR cihazları vb. Aslında bu kadar çok yüksek çözünürlüklü donanım cihazımız olmasına rağmen aslında çok fazla ultra yüksek çözünürlüklü video kaynağımız yok hatta birçok video kaynağının kalitesinin çok düşük olduğu bile söylenebilir. Bu neden oluyor? Aşağıdaki nedenleri özetledik:

İlk neden, kullanıcının davranışının kontrol edilemez olmasıdır. Herkes son UGC video uygulamalarının veya fotoğraf uygulamalarının çok popüler olduğunu bilir, yani kullanıcılar kendi başlarına birçok kısa video ve resim çekebilir, oluşturabilir ve yükleyebilir. Örneğin, Weibo, Douyin, Moments, vb. Gibi iQiyi'de de çok sayıda video, zencefilli kurabiye, balon ve diğer çeşitli uygulamalar bulunur, ancak kullanıcının davranışı kontrol edilemez ve kullanıcı profesyonel atış ekipmanı ve atış becerilerinden yoksundur. Örneğin, düşük ışıkta çekim arka planda çok fazla parazite neden olur ve resim çok karanlıktır Örneğin, resim yayın sırasında birçok kez sıkıştırılır ve bu da çok fazla sıkıştırma gürültüsüne neden olur.

İkinci neden, film kaynağının kendisinin çok eski olmasıdır. Örneğin aşağıdaki iki örnekte soldaki "Arzu" 90 yaşında ve sağdaki "Hemşire Günlüğü" 1957'den kalma siyah beyaz bir film.

Çünkü VCD ve DVD gibi önceki ortamların çözünürlükleri 720P'nin altındadır. Basit bir bakış atabiliriz mesela bu "Özlem" in etkisi, karakterin yüzünde çok fazla gürültü ve arka planda çok fazla çizik var. Yüzde çok fazla gürültü olduğunu görebiliyorsunuz ve sonra filmde bazı çizikler olacak, yani yatay çizgiler ve detaylar bulanık ve sonra buradaki "Hemşire Günlüğü" gibi bariz olduğunu görebilirsiniz. Çok sayıda çizik ve beyaz lekeler. Yanındaki masada çok sayıda beyaz veya siyah, çeşitli çizikler olduğunu görebiliriz. Nedeni, filmin kendisinin zarar görmesi olabileceği gibi, filmin sayısallaştırmaya dönüştürülmesi sürecinde ortaya çıkan ve sağ tarafta çizik, gürültü, titreme gibi bu sorunlara yol açacak hasar olabilir.

Son olarak, kullanıcı aktif olarak düşük bit akışını seçer. Nesnel bir sorun, kalite ne kadar iyi olursa olsun, yine de düşük kaliteye bakmam gerektiğidir. Mesela ay sonu olabileceğinden veya bulunduğum yerdeki şebeke sinyali iyi olmadığından, düşük bit akış modunu seçmem gerekiyor. Düşük bit akışı seçildiğinden, sunucu çözünürlüğü olabildiğince azaltacak ve ayrıca daha fazla sıkıştırma ekleyerek çok fazla sıkıştırma gürültüsü oluşturacaktır.

Düşük kaliteli videonun çeşitli nedenleri olduğu görülebilir. Herkesin arayışı arttıkça, videoların veya resimlerin kalitesini iyileştirme ihtiyacı gittikçe daha acil hale geldi. Yıllar içinde görüntü ve video geliştirme ile ilgili literatüre bakabiliriz ve böyle bir eğilimi kademeli olarak iyileştirdiğini görebiliriz.

2. Video / görüntü geliştirme teknolojisinin ilkeleri ve zorlukları

Daha önce resim veya video kalitesinin düşük olmasının nedenlerinin çok boyutlu olduğundan bahsetmiştik, aslında her boyut bir akademik ve endüstri araştırması konusudur. Bugün bu beş yönden bahsedeceğiz:

Süper çözünürlük, düşük çözünürlük sorununu çözmektir; netleştirmeyi bozmak, arka plan gürültüsü veya sıkıştırma gürültüsünü çözmektir; renk geliştirme, gri ve koyu renkler sorununu çözmektir; kare ekleme düşük kare hızı anlamına gelir; çizilmeyi kaldırmak filmden kaynaklanır Hasarın neden olduğu videoda birçok çizik veya beyaz noktalar, beyaz bloklar veya su lekeleri var.

Öncelikle süper çözünürlük problemine bakalım, bu problemin tanımının bu sınıfa gelen arkadaşlar tarafından anlaşılması gerektiğine inanıyorum, tek modülden sonra yüksek çözünürlüklü imaja dönüşecek düşük çözünürlüklü bir imajdır. Şekil. Bunu başarmak için daha popüler derin öğrenme modelini kullanırsak, genellikle yüksek çözünürlüklü bir görüntü elde etmek için bir CNN modelidir ve sonra ikisi arasında gerçek bir yüksek çözünürlüklü görüntü elde ederiz. Ters iletim yoluyla CNN'deki katsayıları optimize etmek için bir kaybı alın ve kaybı en aza indirin.

İki ana sorun var: Birincisi, CNN'in yapısal tasarımı, bu model yapısının nasıl tasarlanacağı, böylece etkin bir şekilde eski haline getirilebilmesi veya daha fazla piksel yaratabilmesi. Aslında burada piksellerin oluşturulması söz konusudur, çünkü orijinal pikseller azdır, ancak yüksek çözünürlükten sonra daha fazla piksel vardır.

İkinci nokta, görüntünün ayrıntılarını veya kenarlarını daha net hale getirmek için gevşetme işlevinin nasıl seçileceğidir.

Birkaç ana akım uygulamaya bir göz atalım:

İlk kategori, tek çerçeveli süper bölmedir.

Giriş bir resimdir ve çıkış, giriş resminin yüksek çözünürlüklü bir resmidir. Bu resim, sağ alt köşedeki DBPN'den bu makalenin bir özetidir ve ben onu aldım. Her şeyden önce, sol üst köşede en ilkel DNN yöntemi, küçük bir görüntüdür, ilk önce bilineer interpolasyon gibi geleneksel bir interpolasyon işlemiyle büyütülür ve daha sonra amplifikasyondan sonra tam bir evrişimli ağdan geçer. Burada en klasik olanı, süper bölünme için derin öğrenmeyi kullanan öncü bir çalışma olan SRCNN'dir. Arkasında evrimsel VDSR'si vardır. VDSR'nin temel farkı, doğrudan gerçek olanı üretmek yerine nihayet ikisi arasındaki farkı eğitmesidir. Şekil. Bu küresel artık daha sonra da kullanılacak ve gerçek ölçüm etkisi iyidir.

Sol alt köşe, ilk tam evrişim ve son olarak bir yukarı örnekleme sürecidir.Bu yukarı örnekleme, FSRCNN ve EDSR'yi temsil eden ters evrişim veya alt piksel olabilir. Bu tam evrişimi yaparken girdi görüntü boyutunun nispeten küçük olması bir avantaja sahiptir, bu nedenle ilk avantajı hızlı olmasıdır. O zaman ben de bu konuyu büyütme şansı verdim, yani benim büyütmem doğrudan bir büyütme değil, eğitim katsayılarına sahip olabilir.

Sağdaki ikisi yeni yöntemler olsa da aslında iki veya daha fazla büyütme için uygundurlar.Bu Lap gibi yukarıdaki büyütme gibi, görüntünün önce piramit ayrıştırıldığını ve sonra tek tek olduğunu duyarak anlayabilirsiniz. Örneğin, sekiz kez yakınlaştırmak istiyorsanız, aynı anda sekiz kez yakınlaştırmak yerine iki kez yakınlaştırmalı, ardından iki kez yakınlaştırmalı ve ardından iki kez yakınlaştırmalısınız.

Sağ alt köşedeki DBPN, önce yakınlaştırılan ve sonra uzaklaştırılan, ardından yakınlaştırılan ve sonra uzaklaştırılan ve ardından ortadaki her modül DenseNet gibi yöntemler kullanılarak birbirine bağlanan ve sonunda füzyondan sonra bir sonuç elde edilen bir resimdir. DBPN'nin kendi makalesinde de bir veri karşılaştırması var.Performansı iki katına çıktığında EDSR kadar iyi değil, sadece çoklu puan fazla olduğunda bu yapıdaki avantajlarını gösterebilir. Fiyat, işlemlerinin karmaşıklığı ve harcanan zamanın yanı sıra bellek ve video belleği tüketiminin artmasıdır.

İkinci tür, birden çok görüntü karesine dayalı süper çözünürlüktür.

Çünkü çoğu durumda işlediğimiz video aslında videonun ön ve arka çerçeveleri arasındaki ilişkiyi kullanabilir.Ön ve arka çerçeveler daha fazla ayrıntıya sahip olduğu için daha fazla ayrıntı gösterebiliriz. Ön ve arka çerçeveler arasındaki ilişki nasıl birleştirilir? Bunun bir yolu, zamanı kanal sayısı olarak kullanmaktır. Normalde bir resimde üç kanalımız vardır. Üç resim varsa, bu aslında dokuz kanaldır, sonra onu dokuz kanallı bir şey olarak kabul edin ve ardından sonraki işlemler için doğrudan 2D evrişimi kullanın ya da Başka bir boyut olarak, zaman 3B evrişim ile işlenir.

Ön ve arka çerçeveleri birleştirmenin ikinci yöntemi, optik akış kullanmaktır.Optik akış da son zamanlarda çok popülerdir ve videonun birçok alanında kullanılmaktadır. Ön ve arka çerçeveler arasındaki ilişkiyi göz önünde bulunduran tüm algoritmalar için, optik akışı kullanan büyük bir kategori vardır. Şimdi ışık akışının ne olduğuna kısaca bakalım. Soldaki kişiye bakın. Sırtından bir ok çıkardığında dirseği bu konumdan bu konuma değişti. Aslında buradaki her piksel Noktanın hareketi optik akıştır. Kabaca bir anlayışınız varsa, bu bir tür hareket tahmini olarak düşünülebilir.

Optik akışı öğrenebilen çeşitli ağlar olduğu için, optik akışımız öğrenilmişse onu nasıl entegre edebiliriz? TOFlow makalesinde, bu çerçeveye ve onun önceki çerçevesine ve bir sonraki çerçeveye sahip olursak, bunu iki çerçeve arasındaki optik akışa dayanarak tahmin edebileceğimiz ve önceki dikişe dayalı olarak mevcut çerçeveyi tahmin edebileceğimizden bahsediliyor. Bir sonraki çerçeve, geçerli çerçeveyi tahmin etmektir, bu nedenle, gerçek geçerli çerçeve ve iki tahmini geçerli çerçeve olan üç geçerli çerçeveye sahibiz. Bu üç çerçeveyi bir araya getiriyoruz ve bir 2D ve 3D evrişim sürecinden sonra, Oluşturulan son süper çözünürlüklü görüntüyü alabilir.

Mevcut model tasarımımızın yapısı şu şekildedir: Önce tek bir çerçeve işleme, sonra tek bir yukarı örnekleme ve ardından global bir artık kullanıyoruz.

Çünkü aslında tek kare ile çoklu çerçeve arasındaki farkı da karşılaştırdık ve çıplak gözle bakıldığında tek çerçevenin etkisinin çoklu çerçeveye çok yakın olduğunu bulduk.Bu durumda, çoklu çerçevenin tüketimi çok daha fazla olacak ve olacak Diğer bazı efektler, bu nedenle tek kare işleme yöntemini seçtik. Neden sadece tek bir örnekleme kullanalım? İş senaryomuzda, resim temelde iki kez büyütülecek ve dört kat büyütülmesi pek olası değil, bu nedenle doğrudan tek bir sefer kullanmak en uygun maliyetli olanıdır. DenseNet'in yapısı, DBPN fikrinden öğrenmek ve daha düşük seviyeli özellikler sunmaktır. Sonra küresel kalıntı, çünkü VDRI'den sonra süper puanların çoğu temelde küresel kalıntının biçimini alacaktır. Çünkü düşük çözünürlüklü görüntülerin ve yüksek çözünürlüklü görüntülerin temelde düşük frekanslarda aynı olduğu düşünülebilir. Tek fark bu ayrıntılardır. Bu ek, sağdaki görüntünün düşük frekanslı bileşen olduğu ve tüm ağın yalnızca Sadece bu yüksek frekanslı ayrıntıları öğrenin.

Kayıp fonksiyonu seçimine gelince, genel olarak en yaygın kayıp bu tür L1 veya L2 kaybıdır, ki bu mse veya mae'dir. Birçok makale bunu da tartışmıştır. Mse kaybı doğal olarak görüntünün bulanıklaşmasına neden olacaktır. GAN kaybı, görüntünün dağılımına göre pikseller üretmektir. GAN'ın kaybının birçok demoda çok şaşırtıcı olduğu söylenebilir, ancak kullanım sürecinde iki büyük sorun bulduk.Otomatik süreçler için çok uygun olmayabiliriz:

İlki anlamsal tutarsızlığa neden olabilir, kutuya bakabiliriz, soldaki GAN'sız ve sağdaki GAN ile ... Sağdaki resmin gerçekten soldan çok daha net olduğunu görebilirsiniz.

Ancak sorun, "çok net" olmasıdır. En sağdaki orijinal resimdeki gerçek başlık aslında bir güneş, ancak GAN tarafından büyütülmüş resim çok net, ancak güneş görülemiyor. Böylece grafiğin anlamını değiştirir. Soldaki resim belirsiz olmasına rağmen, sadece net olarak görülemiyor, ancak anlambilimini değiştirmiyor. UGC görüntülerinin kullanıcıları tarafından yüklenen görüntüleri hedefliyorsak, yetkisiz kullanıcının orijinal niyetini değiştiremeyiz ve anlamsal doğruluk ile bulanık görüntüler arasında bir denge kuramayız. Anlamsal doğruluğun daha önemli olduğunu düşünüyoruz.

GAN'ın ikinci sorunu, gürültüyü yükseltmektir. Genellikle düşük çözünürlüklü görüntülere gürültü eşlik eder ve bu sesler GAN tarafından somut bir şey olarak görselleştirilebilir.

Son seçimimiz mse artı bir gradyan kaybı. Gradyan kaybı, oluşturulan grafiğin gradyanının ve gerçek grafiğin tutarlı olmasını gerektiren eylem tahmin ağında aslında yaygın bir kayıptır. Çünkü gradyan kenardır. Çoğu durumda, süper puanlarımız kenarları keskinleştirmek ister ve gradyan kaybını eklemek tüm ağın kenarlarını keskinleştirir. Aşağıdaki örneğe bir göz atabiliriz: Soldaki en yaygın olanı ve sonra burada gradyansız los ve işte gradyan kaybı, yani saçın kenarları daha keskin olacak.

Aşağıda videodaki süper skor örneğine bakabiliriz. Bu örnek geçen yıl iQiyi Dünya Kongresi'nde gösterildi. Sol tarafın genel olarak bulanık ve sağ tarafın daha net olduğunu görebilirsiniz, bu 540P'den 1080P'ye kadar bir video.

Daha önce sunduğum bulut tabanlı bir algoritmaydı.Aslında mobil terminalin derin öğrenme yöntemlerini benimsemesi uygun değil.Tflite ve ncnn gibi mobil derin öğrenme çerçeveleri olmasına rağmen makineye çok iyi uymadılar. Birçok düşük kaliteli cep telefonu aslında bu tür bir üretim modelini çalıştıramaz. Esas olarak mobil terminaldeki verimliliği dikkate alıyoruz, bu nedenle eğitim ve optimizasyon için uygulamak için tek katmanlı bir filtre kullanıyoruz.

Süper bölümlemeden söz ettikten sonra, gürültüden arındırma hakkında konuşalım. Görüntüdeki gürültü esas olarak arka plan gürültüsü ve sıkıştırma gürültüsüdür. Aslında, gürültüden arındırma ve süper bölümlemenin ağ yapısı çok benzer olabilir, çünkü hepsi "resim-resim" dir Ağ oluşturmak, bu nedenle yukarıda belirtilen şeyler temelde birbirlerinden referans olarak kullanılabilir. Örneğin, sağ taraf aynı zamanda küresel artıkları da yönlendirir.

Aslında, gürültüden arındırmanın iki ana sorunu vardır:

Birincisi, gürültü azaltmanın kendisi, temelde bir alçak geçiren filtre olan bir alçak geçiren filtre olmasıdır.Gürültüyü giderirken kenarlar ve ayrıntılar mümkün olduğunca nasıl korunur?

İkincisi, gerçek gürültünün nasıl simüle edileceğidir, çünkü birçok makale aslında birçok gürültü azaltma yönteminin yapay gürültünün test setinde çok iyi olduğunu söylemiştir, çünkü bunlar aynı zamanda yapay sentez yöntemleriyle de eğitilmiştir. Bir Gauss gürültüsü eklemek, ancak bu gerçek resimde işe yaramayabilir, bu nedenle gerçek nedeni nasıl daha iyi simüle edebileceğimiz de büyük bir sorundur.

Gürültü giderme için iki klasik ağa bir göz atabiliriz: İlki, tamamen evrişimli bir model olan DNCNN'dir.Sadece bir gürültü görüntüsü girin ve çok katmanlı evrişimden sonra, nihayet global bir artık çıkar. Eğitim sırasında, karışık veri setini simüle etmek için eğitim setine çeşitli Gauss gürültü azaltma seviyeleri eklenir. İkincisi, 2019'da CVPR olan CBDNet. Ağı iki bölüme ayrılmıştır. İlk olarak, bir resim çekin ve önce gürültü seviyesinin ne olduğunu tahmin edin ve ardından tahmini gürültü seviyesini ikinci ağa girin, orijinal resmi ekleyin ve ardından bir Oluşturulan son görüntü. Aynı zamanda, önceki gürültü tahmininin deneysel sonuçlarına dayanan ortada asimetrik bir kayıp ortaya çıkarır.Eğer tahmin de yanlışsa, küçük olanı büyük olandan tahmin etmek daha iyidir. Asimetrik kayıp, her iki taraftaki cezaların tutarsız olduğu anlamına gelir.

Burada yaptığımızda, aynı anda hem denoising hem de bileme işlemini tamamlamak için uçtan uca bir ağ benimsedik. Gürültü esas olarak arka plan gürültüsü ve sıkıştırma gürültüsüdür. Aynı zamanda gürültüden arındırma ve keskinleştirmenin amacı, gürültüden arındırmanın neden olduğu kenarların bulanıklığını telafi etmektir.Ağ yapısı önceki süper puana çok benzer.

Yaratma ve keskinleştirme aynı anda nasıl tamamlanır? Aslında genel fikir, eğitim setine belirli bir oranda gürültü ve bulanıklık eklemek ve ardından gerçek duruma yakın durmak ve sonra ayarlamaya devam etmek ve ardından daha iyi bir etki elde etmektir.

Gerçek resimlerden bazı örnekler görebilirsiniz, yeşil ellerin etrafındaki gürültü gitti. Ardından, örneğin sağdaki "Arzu" resminde metin vurgulanır ve giysilerin kafes dokusu daha net olur.

Şimdi, renk geliştirme sorunu olan bir sonraki soruna bakalım. Esas olarak, resimlerde veya videolarda zayıf parlaklık, aşırı parlaklık, aşırı pozlama veya soluk renk sorununu çözer. İki temel yöntem vardır. Birincisi kara kutu modudur. Bu, uçtan uca bir üretken modeldir, yani bu ağdan sonra kötü bir resim çeker veya tam evrişim veya setten çıkar ve sonra iyi bir resim oluşturur, örneğin, DPE 18 yıllık CVPR'dir. Önceki ağ belirlenmemiş bir yapıdır.Bir resim çıkardıktan sonra, bir çift veri öznemiz varsa, yapay PS'den sonra kötü bir resim ve buna karşılık gelen iyi bir resim var, o zaman mse kaybını kullanabiliriz. + Yapılacak GAN kaybı, eğer eşleştirilmiş veriye sahip değilsek, bunu yapmak için cycleGAN'ı kullanırız. Neden kara kutu modeli? Nihayet elde ettiğimiz şey gelişmiş bir görüntü olduğundan, kötü bir görüntüyü nasıl iyi bir görüntüye dönüştürdüğünü bilmiyoruz.

İkinci tip beyaz kutu modelidir Bu ağ, üretici bir ağ değil, bir regresyon modelidir. Orijinal görüntüyü girin, renkle ilgili çeşitli parametrelerin çıktısını alın ve ardından orijinal görüntüyü işlemek için normal görüntü işleme yöntemini kullanın. Kötü bir resmi iyi bir resme dönüştürmek için adım adım pekiştirmeli öğrenme ve GAN'ı entegre eden Microsoft tarafından önerilen maruz kalma yöntemine başvurabiliriz Neden pekiştirmeli öğrenme? Bu satranç oynamakla aynı, örneğin her biri önce yapılması gereken ve hangi adımın izlenmesi gereken 12 satranç taşı var ve her adımda kullanılan miktar ayarlanabiliyor.

Bu iki yöntemi özetleyebiliriz: Birincisi, kara kutu modeli üretken bir model olduğu için eğitilmesi daha kolaydır ve daha önce kullanılan tüm üretken modeller eğitilebilir. Ancak sorunu, renk bloğunda anlamsal tutarsızlığa neden olabilecek anormal değerler olabilmesidir. Sonuçta, evrişim ilkesi, çıktı piksel değerinin yalnızca orijinal piksel değeriyle değil, aynı zamanda alıcı alandaki diğer piksel değerleriyle de ilişkili olmasına yol açar. İkinci sorun, orijinal görüntü çok büyükse zamanın çok yavaş olacağıdır.

Beyaz kutu modeli aslında insan PS alışkanlığıyla daha uyumludur Bir resim aldıktan sonra, yalnızca hangi parametreleri değiştireceğinizi bilmeniz gerekir. Ve video durumlarıyla uğraşmak için daha uygun. Ancak sorunu, eğitimin bir araya getirilmesinin zor olması ve en iyi örneklerin kara kutu kadar iyi olmaması olabilir.

Çevrimiçi modeli stabilize etmek için, pozlamaya kıyasla çok daha basitleştirilmiş bir beyaz kutu versiyonu tasarladık. İlk olarak, artık pekiştirmeli öğrenmeyi uygulamıyoruz, sadece şu üç nicelikle ilgileniyoruz: pozlama, doygunluk ve beyaz dengesi. Çünkü birçok deneyden sonra, bu üç değerin resmin rengini ayarlamak için en önemli olduğunu gördük. Sonra sırasını düzeltiriz. Son olarak, kayıp ararken iki kaybımız var: İlk kayıp, Adobe'nin FiveK'sı gibi bazı eşleştirilmiş veri setlerine sahip olduğu için geliştirilmiş görüntünün ve gerçek iyi görüntünün en büyük kısmı. İkinci kayıp renk ayar parametresinin geri kalan kısmıdır Bu gerçek değer nasıl elde edilir? Aynı zamanda kendi oluşturduğumuz bazı veri setleri de yapabiliriz, yani iyi bir resim elde ettikten sonra, pozlama ve doygunluğunu bilinçli olarak düşürürüz Şu anda, bunu telafi etmek için ne kadar pozlama ve doygunluğun eklenmesi gerektiğini biliyoruz. . Yani bir yandan bu kayıpları elde etmek için bu iki kaybı da birleştirebiliriz, diğer yandan bu gerilemelerin kaybını da küçültebiliriz, bu da tüm modeli daha kararlı hale getirebilir. Aynı zamanda hesaplama miktarı çok azdır, büyük bir görüntü işlenmek üzere 64 × 64'e indirilebilir.

Son işlemin etkisine bakıldığında, birinci ve üçüncü sütunlar orijinal görüntülerdir ve sağdaki iki sütun geliştirilmiş görüntülerdir. Parlaklığı, doygunluğu ve beyaz dengesini ayarladıktan sonra, etkinin hala iyi olduğunu görebiliriz.

Sonraki soru, video işlemede kareler arasındaki tutarlılığın nasıl korunacağıdır. Çoğu durumda, videolarımız kare kare yapılır. Bu karenin, örneğin kırmızı rengin pozitif kırmızı olması ve sonraki karenin de pozitif kırmızı olması nasıl sağlanır. Bir süre daha koyulaşırsa ve bir süre daha koyulaşırsa, bunu göreceksiniz. Renkler titriyor. bu problem nasıl çözülür? Halka açık gazetelerde bu sorun hakkında çok az tartışma var ve bir çözüm tasarladık: önce sahne bölümlemesinden geçin ve sonra beyaz kutu modelini uygulayın. Bir video karesi farklı sahnelere böldükten sonra onu farklı sahnelere bölebiliriz.Bu sahne segmentasyonunun temeli, resmin rengindeki ani değişimi bulmak ve ardından parametreleri elde etmek için beyaz kutu modelini gerçekleştirmek için her sahnede bir çerçeve seçiyoruz. , Bu sahnedeki tüm kareler, renk geliştirme için aynı parametreleri kullanır.

"Arzu" nun rengini geliştirmek için basit bir video örneğine bakabiliriz, örneğin yapraklar daha yeşil olacaktır.

Renk geliştirmeden bahsettikten sonra, aşağıdaki çiziklere bakalım. Çizik giderme aslında nispeten küçük bir sorundur ve daha az ilgili kağıt vardır.Bunun nedeni filmin kendisinin hasar görmesidir. Burada olduğu gibi birisi filmi çizebilir ve sonunda yayınlandığında bir çizik olabilir ya da okuma sırasında manyetik kafa tarafından rahatsız edilebilir, bu tür yukarı aşağı dalgalanmalar hareket edecektir.

Bu tür bir sorunu çözmek için klasik yöntem, iki aşamalı bir yöntemdir. Birincisi, çiziklerin algılanması ve ardından çizikler giderilmesidir. Çoğu durumda, çiziklerin tespiti düz bir çizgi algılama yöntemini benimser. Düz çizgi algılama, boşluğu bulmaktır. Dikey çizgiler, yatay çizgiler, düz çizgiler ve ardından bu çizgiyi diğer piksellerle doldurmak için uzamsal enterpolasyon veya zaman enterpolasyonu kullanın. Eksiklikleri daha belirgindir: Birincisi, çizik düz bir çizgi değilse, su lekesi, beyaz leke, zikzaksa ve etkisi işe yaramayabilir. İkinci olarak, resmin kendisi, bir telefon direği veya masadaki doku gibi yatay veya dikey çizgiler içerebilir ve yanlış tanımlanırsa kaldırılacaktır.

Peki bu yöntemle nasıl başa çıkılır? Bir önceki süper bölmede bahsedilen optik akış yönteminden öğrenebiliriz, ancak burada bir öncül var, yani çizikler sadece bu çerçevenin bu konumunda görünebilir ve önceki ve sonraki çerçevelerin aynı konumunda görünmeyecektir. Bu çizik prensibiyle belirlenir, çünkü iki filmin aynı yerde tam olarak aynı çiziklere tesadüfen sahip olması imkansızdır. Böyle bir öncülümüz olduktan sonra, yukarıdaki modeli tasarlayabilir, belirli bir çerçeveyi tahmin etmek için optik akışı kullanabilir ve ardından füzyon gerçekleştirebiliriz.

Ama bir sorun var, 2k karenin öncesi ve sonrası aynı sahnede olmasını nasıl sağlayabiliriz? Normal videoda klipler olduğu için sahne değiştirme olacak, daha sonra az önce bahsettiğimiz sahne algoritması tekrar kullanılabilir. Nihai etkiyi görebiliriz.

Son soru, çerçeve enterpolasyonuyla ilgilidir.Kare enterpolasyon teknolojisinin anlaşılması aslında çok kolaydır, yani orijinal video çerçeve hızı nispeten düşüktür, canlı spor müsabakaları gibi izleme deneyimini daha pürüzsüz hale getirmek için video çerçeve hızını nasıl artırabiliriz veya Daha çok çizgi filmlerde, dövüş aksiyon filmlerinde ve dövüş sanatları filmlerinde kullanılabilir. Temel yöntemler şu şekildedir: Optik akışla tahmin edilir, sonra füzyondan sonra eğrilir ve yapı önceki çiziksiz yapıya çok benzer.

Örneğin CVPR'nin 18 yıllık bu yazısında, burada optik akış ve sağda füzyon olduğunu görebiliyoruz Yeniliği nerede? Nihai sentezlenen ve eklenen çerçevenin de daha iyi bir kenara sahip olmasını sağlamak için biraz kenar çıkarma eklemek ve bazı kenar özellikleri yapmaktır. Bu makale henüz açık kaynakta uygulanmadı, bu modele göre bazı kesintiler yaptık çünkü sağdaki çok büyük. Efektin solundaki orijinal videoya kısaca bir göz atalım.Araba kayar ve bir kart, bir kart ve bir kart görür ve sağdaki daha pürüzsüz olur.

3. ZoomAI teknolojisinin uygulanmasına ve uygulanmasına giriş

Üçüncü bölüm, ZoomAI çerçevesine ve uygulamasına giriş niteliğindedir.

ZoomAI resim çözümü. Resimler için, araç setinde süper çözünürlük, keskinliği bozma ve renk geliştirme gibi üç özelliği vardır. Hepsi tek bir resim için yapıldığından, bir resim girdikten sonra, bu üç arayüz aynı şekilde yapılabilir, böylece her bir iş kolu serbestçe yapılandırılabilir, hangi araçları kullanacak ve bunların sırası nedir Veya ilgili parametreler esnek bir şekilde yapılandırılabilir, bu 1.0 çözümüdür.

2.0'da içerik anlayışını ekledik. Şimdi düşünün. Birçok resim. Örneğin, portre modunda arka plan bulanık olduğunda arka plan netleştirilmemelidir. Bu resimde metin varsa metin Alanın keskinleştirilmesi özellikle kalın yapılabilir. Bu yüzden 2.0'da, metin alanını algılamak için önce metin algılamadan geçiyoruz ve ayrıca bu resmin ön plan alanını ve arka plan alanını tespit etmek için bir ön plan çıkarma ağı kullanıyoruz ve ardından her alanın modülü önceki 1.0 modülüdür ve son olarak Sonuç.

Şematik diyagrama bir göz atalım.Örneğin, bu resimde Xiena'nın kendisi ön plan alanı, metin kısmı metin alanı ve geri kalanı birleşmek için arka plan alanıdır.

ZoomAI video çözümü. Bu video çözümünün birden fazla aracı vardır. İlk olarak, iki ön işleme aracı vardır - sahne bölümleme ve tekrarlanan kare kaldırma, ardından kare kaldırma çizikleri ve kare ekleme arasında bazı algoritmalar ve ardından tek bir kare algoritması - -Tek bir resmi işlemek için süper bölme, keskinliği bozma, renk geliştirme, vb. Her videonun sıkıştırması açılarak bir resim haline getirilir ve ardından tekrarlanan kareler kaldırılır ve ardından sahne bölümlemesinden sonra, her sahne kareler arası algoritmaya ve tek kare algoritmasına bölünür ve son olarak orijinal sesle birleştirilerek nihai video haline gelir. Orta kısım, iş kolunun mantığına göre istenildiği zaman ayarlanabilir.

Çeşitli hizmetler ve kullanım senaryoları. ZoomAI'nin halihazırda iQiyi'nin çoklu ürün serileri ve uygulama senaryolarında uygulanan çoklu algoritma modülleri içerdiği görülebilir.

İşte bazı mevcut uygulama senaryoları. Her şeyden önce, bu ulusal dramanın restorasyon projesidir, esas olarak iki modül olan keskinleştirme ve çizilmeyi giderir.İşlememizden sonra yüz daha pürüzsüz görünüyor, arka planda gürültü yok, metinde titreme yok ve metin daha fazla. Vurgu.

Burada, yapay zeka işlemenin manuel işlemeye göre en büyük avantajı, verimlilik artışı, maliyet azaltma ve 500 kat verimlilik iyileştirmesidir. Ulusal dramanın ilk aşamasının restorasyon sonuçları Bahar Şenliği sırasında tanıtıldı. Şimdi yaz aylarında dört klasiği içeren ikinci grup klasik TV dizisini yayınlamaya hazırlanıyor.

Bu, eski varyete şov videolarının işlenmesidir. "Kaosun Tezahürü" öykü anlatımının eksiksiz koleksiyonu, iQiyi'de piyasaya sürüldü. Orijinal çözünürlüğü çok düşük, sadece 240P ve çok fazla pürüzlü. Çevrimiçi standart. Bir örneğe bakabiliriz, buradaki tablonun dokusu daha net ve soldaki orijinal görüntü daha bulanık olacak.

Aşağıdaki animasyonda bir geliştirme var: Süper bölünmüş modülü ve renk geliştirmeyi kullanıyoruz ve sağdaki kırmızı daha kırmızı olacak. Videonun etkisine bir göz atalım, sağdaki çim daha yeşil olacak ve genel renk daha canlı olacak. Daha sonra görünecek olan sarı dahil buradaki kırmızı, genel olarak daha canlı olacaktır. Ve sahne segmentasyonu uygulandıktan sonra renkler titremeyecek ve çok kararlı olacak.

Bu, "Dört Denizde Balina Gezintisi" adlı 3D animasyonun geçiş efektinin bir görüntüsüdür. Soldaki orijinal olanı dönerken geminin tek tek sıkıştığını ve sağdakinin açıkça daha pürüzsüz olduğunu görebiliyorsunuz.Özellikle kamera uzaklaştırıldığında solda güçlü, sağda pürüzsüz bir gecikme hissi var.

Aşağıdakiler, her kanalın kapak görüntüsünü iyileştirmenin etkisidir.Şimdi iQiyi'yi açtığınızda gördüğünüz kapak görüntüleri temelde ZoomAI tarafından geliştirilir ve kullanılan modüller keskinleştirme ve renk geliştirmeyi denoize eder.

4. Gelişmiş kaynak önerisi ve deneyim paylaşımı

İşte mühendislik düşüncesine odaklanıyoruz. İki grup akademik çevre ve mühendislik uygulamalarının farklı odak noktaları vardır: İlki model tasarımı ve yeniliğe odaklanırken, mühendislik uygulamaları için en çok zaman veri ve eğitime harcanmaktadır.

İşimizdeki en önemli nokta verilerdir.Kaggle rekabetinin aksine, hazır bir veri setimiz yoktur. Gerçek uygulama senaryolarını yansıtan verileri toplamak için çeşitli mühendislik tekniklerine güvenmemiz gerekir. Verilerin kalitesi, nihai modelin etkisini büyük ölçüde etkiler. Daha sonra modelin sonuçları için, PSNR gibi göstergeler referans olarak kullanılabilir, ancak sonuçta öznel duygulara bağlıdır. Süper puan ve çerçeve yerleştirme eğitiminde A'nın B'den daha iyi olduğu birçok durumla karşılaştık, ancak öznel olarak B'nin A'dan daha iyi olduğunu hissettik. Sonuçta, nihayet kullanıcılara sunulan öznel duygulardır. Bu aynı zamanda mevcut değerlendirme endeksinin sapmasıdır.GAN ile ilgili makaleler çok şey anlattı ve biz de bu konu üzerinde çalışıyoruz.

Model seçiminde modelin kararlılığına ve genelleme yeteneğine daha çok dikkat ediyoruz. Sonuçta, çarpıcı bir demo etkisi için değil, çevrimiçi bir hizmettir. Elbette, bir modeli seçerken ve tasarlarken, modelin kendisinin boyutundaki kısıtlamalar, yürütme hızındaki kısıtlamalar ve hangi çerçevenin destekleneceği gibi daha ağır kısıtlamaları da göz önünde bulundurmanız gerekir. Sonunda, etki ve verimlilik arasında bir denge bulunur.

Son olarak, bu algoritmalarla ilgili makalelerin kaynağından bahsetmiştim.İlgilenen arkadaşlar daha yakından inceleyebilirler.Bu, bugün paylaşılan yaklaşık içeriktir.

Şablon tabanlı metin tanıma sonuçları yapılandırılmış işleme teknolojisi | Milyonlarca insan AI öğreniyor
önceki
Bilgi grafiğine dayalı insan-makine diyalog sistemi | Milyonlarca insan AI öğreniyor
Sonraki
Geling Deep Pupil: Endüstriyel düzeyde yüz tanımada büyük ölçekli yüz tanıma uygulaması üzerine bir tartışma | Milyonlarca yapay zeka
Dachang şirket içi bilgileri | Redis performans optimizasyonu için 13 askeri kural
Yapay zeka, uç hesaplamanın "iki darbesinden" nasıl geçer?
Bitcoin'in yaratıcısı olduğunu iddia eden Satoshi Nakamoto, bu adam şimdi yargıç tarafından öfkeyle yalan söylüyor
Yunzhongshen algoritmasından araştırmacı: Çapraz Mirror izleme teknolojisinin ve zorlukların ayrıntılı açıklaması | Milyon insan AI öğreniyor
0'dan 1'e: Bilgisayarla Görme Teknolojisi ve Anlarda Patlayıcı Anların Arkasındaki Uygulama | Yapay Zeka Öğrenimi
Meituan Beyin: Bilgi Haritasının Modelleme Yöntemi ve Uygulaması | Milyon Kişi AI öğreniyor
Wenyin Internet Baojie: Bilgi grafiklerinin ve teknik bağlamın geliştirilmesinin anahtarının derinlemesine analizi | Milyonlarca insan AI öğreniyor
Bilgi grafiğine dayalı insan-makine diyalog sistemi | Milyonlarca insan AI öğreniyor
İlkbaharda gölü ziyaret etmek kolay değil ama yine de evde data gölünden bahsetmek mümkün ...
Python veri analizi iş başında: klasik kohort analizi
Salgından akıllı tıbbi senaryoların yeni uygulamalarına baktığımızda, akıllı tıbbi bakımın derinlemesine geliştirilmesi için olasılıklar nelerdir?
To Top