شبکه عمیق L2NET
ژوئن 18, 2022
توضیح مختصر شبکه تطبیق تصویر super point
آگوست 23, 2022شبکه عمیق Super Point
The first step in geometric computer vision tasks such as Simultaneous Localization and Mapping (SLAM), Structure-from-Motion (SfM), camera calibration, and image matching is to extract interest points from images
اولین قدم در کارهای بینایی کامپیوتری هندسی مانند مکان یابی و نقشه برداری همزمان (SLAM)، ساختار از حرکت (SfM)، کالیبراسیون دوربین و تطبیق تصویر، استخراج نقاط مورد علاقه از تصاویر است.
Interest points are 2D locations in an image which are stable and repeatable from different lighting conditions and viewpoints. The subfield of mathematics and computer vision known as Multiple View Geometry [9] consists of theorems and algorithms built on the assumption that interest points can be reliably extracted and matched across images. However, the inputs to most real-world computer vision systems are raw images, not idealized point locations
نقاط مورد علاقه مکانهای دوبعدی در یک تصویر هستند که از نظر شرایط نوری و دیدگاههای مختلف پایدار و قابل تکرار هستند. زیرشاخه ریاضیات و بینایی کامپیوتر که به هندسه چند نمایی [9] معروف است از قضایا و الگوریتم هایی تشکیل شده است که بر این فرض ساخته شده اند که نقاط علاقه را می توان به طور قابل اعتماد استخراج کرد و بین تصاویر مطابقت داد. با این حال، ورودیهای بیشتر سیستمهای بینایی رایانهای در دنیای واقعی، تصاویر خام هستند، نه مکانهای نقطه ایدهآل.
Convolutional neural networks have been shown to be superior to hand-engineered representations on almost all tasks requiring images as input. In particular, fully convolutional neural networks which predict 2D “keypoints” or “landmarks” are well-studied for a variety of tasks such as human pose estimation [31], object detection [14], and room layout estimation [12]At the heart of these techniques is a large dataset of 2D ground truth locations labeled by human annotators.
نشان داده شده است که شبکه های عصبی کانولوشن در تقریباً تمام کارهایی که به تصاویر به عنوان ورودی نیاز دارند، نسبت به بازنمایی های مهندسی شده با دست برتر هستند. به طور خاص، شبکههای عصبی کاملاً کانولوشنی که «نقاط کلیدی» یا «نقاط برجسته» دوبعدی را پیشبینی میکنند، برای کارهای مختلفی مانند پیش بینی وضعیت انسان [31]، تشخیص شی [14]، و پیش بینی چیدمان اتاق [12] به خوبی مطالعه شدهاند. در قلب این تکنیک ها مجموعه داده بزرگی از گراند تروث است که توسط حاشیه نویسان انسانی برچسب گذاری شده است.
It seems natural to similarly formulate interest point detection as a large-scale supervised machine learning problem and train the latest convolutional neural network architecture to detect them. Unfortunately, when compared to semantic tasks such as human-body keypoint estimation, where a network is trained to detect body parts such as the corner of the mouth or left ankle, the notion of interest point detection is semantically ill-defined. Thus training convolution neural networks with strong supervision of interest points is non-trivial.
طبیعی به نظر می رسد که به طور مشابه تشخیص نقطه علاقه را به عنوان یک مسئله یادگیری ماشین تحت نظارت در مقیاس بزرگ فرموله کنیم و آخرین معماری شبکه عصبی کانولوشنال را برای شناسایی آنها آموزش دهیم. متأسفانه، در مقایسه با وظایف معنایی مانند تخمین نقطه کلیدی بدن انسان، که در آن شبکه ای برای تشخیص اجزای بدن مانند گوشه دهان یا مچ پای چپ آموزش دیده است، مفهوم تشخیص نقطه علاقه از نظر معنایی بد تعریف شده است. بنابراین آموزش شبکههای عصبی کانولوشن با نظارت قوی بر نقاط مورد علاقه بیاهمیت نیست.
Instead of using human supervision to define interest points in real images, we present a self-supervised solution using self-training. In our approach, we create a large dataset of pseudo-ground truth interest point locations in real images, supervised by the interest point detector itself, rather than a large-scale human annotation effort
به جای استفاده از نظارت انسانی برای تعریف نقاط مورد علاقه در تصاویر واقعی، ما راه حلی خود نظارت با استفاده از خودآموزی ارائه می دهیم. در رویکرد خود، ما یک مجموعه داده بزرگ از مکانهای نقطه مورد علاقه گراند تورث راکه توسط خود آشکارساز نقطه علاقه نظارت میشود، به جای تلاش برای حاشیهنویسی در مقیاس بزرگ توسط انسان در تصاویر واقعی ایجاد میکنیم
To generate the pseudo-ground truth interest points, we first train a fully-convolutional neural network on millions of examples from a synthetic dataset we created called Synthetic Shapes (see Figure 2a). The synthetic dataset consists of simple geometric shapes with no ambiguity in the interest point locations. We call the resulting trained detector MagicPoint—it significantly outperforms traditional interest point detectors on the synthetic dataset (see Section 4). MagicPoint performs surprising well on real images despite domain adaptation difficulties [7].
However, when compared to classical interest point detectors on a diverse set of image textures and patterns, MagicPoint misses many potential interest point locations. To bridge this gap in performance on real images, we developed a multi-scale, multi-transform technique − Homographic Adaptation
برای ایجاد نقاط مورد علاقه شبه گراند تورث ، ابتدا یک شبکه عصبی کاملاً کانولوشنال را بر روی میلیونها نمونه از مجموعه داده مصنوعی به نام اشکال مصنوعی که ایجاد کردیم آموزش میدهیم (شکل 2a را ببینید). مجموعه داده مصنوعی شامل اشکال هندسی ساده بدون ابهام در مکانهای نقطه مورد علاقه است. ما آشکارساز آموزشدیده حاصل را MagicPoint مینامیم – این آشکارساز به طور قابلتوجهی از آشکارسازهای نقطه علاقه سنتی در مجموعه داده مصنوعی بهتر عمل میکند (به بخش 4 مراجعه کنید). MagicPoint علیرغم مشکلات تطبیق دامنه [7] روی تصاویر واقعی عملکرد شگفت انگیزی دارد.
با این حال، در مقایسه با آشکارسازهای نقطه علاقه کلاسیک در مجموعه متنوعی از بافتها و الگوهای تصویر، MagicPoint بسیاری از مکانهای بالقوه نقاط مورد علاقه را از دست میدهد. برای پر کردن این شکاف در عملکرد بر روی تصاویر واقعی، ما یک تکنیک چند مقیاسی و چند تبدیلی ایجاد کردیم – انطباق هوموگرافیک
Homographic Adaptation is designed to enable selfsupervised training of interest point detectors. It warps the input image multiple times to help an interest point detector see the scene from many different viewpoints and scales (see Section 5). We use Homographic Adaptation in conjunction with the MagicPoint detector to boost the performance of the detector and generate the pseudo-ground truth interest points (see Figure 2b). The resulting detections are more repeatable and fire on a larger set of stimuli; thus we named the resulting detector SuperPoint
تطبیق هوموگرافیک برای فعال کردن آموزش خود نظارت آشکارسازهای نقطه علاقه طراحی شده است. تصویر ورودی را چندین بار منحرف میکند تا به آشکارساز نقطه علاقه کمک کند تا صحنه را از دیدگاهها و مقیاسهای مختلف ببیند (به بخش 5 مراجعه کنید). ما از تطبیق هوموگرافیک برای ارتباط با آشکارساز MagicPoint برای افزایش عملکرد آشکارساز و ایجاد نقاط علاقه شبه گراند تورث استفاده می کنیم (شکل 2b را ببینید). تشخیصهای حاصل تکرارپذیرتر هستند و روی مجموعه بزرگتری بهتر عمل می کنند. بنابراین آشکارساز حاصل را SuperPoint نامیدیم
The most common step after detecting robust and repeatable interest points is to attach a fixed dimensional descriptor vector to each point for higher level semantic tasks, e.g., image matching. Thus we lastly combine SuperPoint with a descriptor subnetwork (see Figure 2c). Since the SuperPoint architecture consists of a deep stack of convolutional layers which extract multi-scale features, it is straightforward to then combine the interest point network with an additional subnetwork that computes interest point descriptors (see Section 3). The resulting system is shown in Figure 1
متداولترین مرحله پس از شناسایی نقاط مورد علاقه قوی و قابل تکرار، پیوست کردن یک بردار توصیفگربا بعد ثابت به هر نقطه برای کارهای معنایی سطح بالاتر، به عنوان مثال، تطبیق تصویر است. بنابراین ما در نهایت SuperPoint را با یک زیرشبکه توصیفگر ترکیب می کنیم (شکل 2c را ببینید). از آنجایی که معماری SuperPoint شامل یک پشته عمیق از لایههای کانولوشن است که ویژگیهای چند مقیاسی را استخراج میکند، پس از آن ترکیب کردن شبکه نقطه کلیدی با یک زیرشبکه اضافی که توصیفگرهای نقطه کلیدی را محاسبه میکند، ساده است (به بخش 3 مراجعه کنید). سیستم به دست آمده در شکل 1 نشان داده شده است.
SuperPoint Architecture
We designed a fully-convolutional neural network architecture called SuperPoint which operates on a full-sized image and produces interest point detections accompanied by fixed length descriptors in a single forward pass (see Figure 3). The model has a single, shared encoder to process and reduce the input image dimensionality. After the encoder, the architecture splits into two decoder “heads”, which learn task specific weights – one for interest point detection and the other for interest point description. Most of the network’s parameters are shared between the two tasks, which is a departure from traditional systems which first detect interest points, then compute descriptors and lack the ability to share computation and representation across the two tasks.
معماری سوپرپوینت
ما یک معماری شبکه عصبی کاملاً کانولوشنال به نام SuperPoint طراحی کردیم که بر روی یک تصویر با اندازه کامل عمل میکند و تشخیص نقاط علاقه همراه با توصیفگرهای طول ثابت را در یک گذر به جلو تولید میکند (شکل 3 را ببینید). این مدل دارای یک رمزگذار مشترک برای پردازش و کاهش ابعاد تصویر ورودی است. پس از رمزگذار، معماری به دو سر رمزگشا تقسیم میشود که وزنهای خاص کار را یاد میگیرند – یکی برای تشخیص نقطه علاقه و دیگری برای توصیف نقطه علاقه. بیشتر پارامترهای شبکه بین دو وظیفه مشترک است، که یک تغییر از سیستمهای سنتی است که ابتدا نقاط علاقه را تشخیص میدهند، سپس توصیفگرها را محاسبه میکنند و توانایی اشتراکگذاری محاسبات و بازنمایی در بین دو وظیفه را ندارند.
Our SuperPoint architecture uses a VGG-style [27] encoder to reduce the dimensionality of the image. The encoder consists of convolutional layers, spatial downsampling via pooling and non linear activation functions. Our encoder uses three max-pooling layers, letting us define Hc = H/8 and Wc = W/8 for an image sized H × W. We refer to the pixels in the lower dimensional output as “cells,” where three 2×2 non-overlapping max pooling operations in the encoder result in 8 × 8 pixel cells. The encoder maps the input image I ∈ R H×W to an intermediate tensor B ∈ R Hc×Wc×F with smaller spatial dimension and greater channel depth (i.e., Hc < H, Wc < W and F > 1)
معماری SuperPoint ما از یک رمزگذار به سبک VGG [27] برای کاهش ابعاد تصویر استفاده می کند. رمزگذار شامل لایه های کانولوشن، کاهش مکانی تصویر با از طریق پولینگ و توابع فعال سازی غیر خطی است. رمزگذار ما از سه لایه max-pooling استفاده میکند که به ما اجازه میدهد Hc = H/8 و Wc = W/8 را برای یک تصویر با اندازه H × W تعریف کنیم. ما پیکسلهای خروجی ابعاد پایینتر را بهعنوان «سلولها» یاد میکنیم، که در آن سه عملیات max pooling 2× 2 غیر همپوشانی در رمزگذار منجر به سلول های 8 × 8 پیکسل می شود. رمزگذار تصویر ورودی I ∈ R H × W را به یک تانسور میانی B ∈ R Hc × Wc × F با ابعاد فضایی کوچکتر و عمق کانال بیشتر نگاشت می کند (یعنی Hc 1)
Interest Point Decoder
For interest point detection, each pixel of the output corresponds to a probability of “point-ness” for that pixel in the input. The standard network design for dense prediction involves an encoder-decoder pair, where the spatial resolution is decreased via pooling or strided convolution, and then upsampled back to full resolution via upconvolution operations, such as done in SegNet [1]. Unfortunately, upsampling layers tend to add a high amount of computation and can introduce unwanted checkerboard artifacts [18], thus we designed the interest point detection head with an explicit decoder1 to reduce the computation of the model.
The interest point detector head computes X ∈ R Hc×Wc×65 and outputs a tensor sized R H×W . The 65 channels correspond to local, non-overlapping 8 × 8 grid regions of pixels plus an extra “no interest point” dustbin. After a channel-wise softmax, the dustbin dimension is removed and a R Hc×Wc×64 ⇒ R H×W reshape is performed.
رمزگشای نقطه کلیدی
برای شناسایی نقطه کلیدی، هر پیکسل از خروجی مرتبط به یک احتمال از “نقطه-” برای آن پیکسل در ورودی است . طراحی شبکه استاندارد برای پیشبینی متراکم شامل یک جفت رمزگذار-رمزگشا است، که در آن وضوح مکانی از طریق پولینگ یا پیچیدگی گامبهگام کاهش مییابد، و سپس از طریق عملیات upconvolution، مانند انجام شده در SegNet [1] به وضوح کامل برمیگردد. متأسفانه، لایههای upsampling تمایل به اضافه کردن مقدار بالایی از محاسبات دارند و میتوانند مصنوعات شطرنجی ناخواسته را معرفی کنند [18]، بنابراین ما سر تشخیص نقطه علاقه را با رمزگشای صریح1 طراحی کردیم تا محاسبات مدل را کاهش دهیم.
آشکارساز نقطه کلیدی X ∈ R Hc × Wc × 65 را محاسبه می کند و یک تانسور با اندازه R H × W را خروجی می دهد. 65 کانال مربوط به مناطق شبکه ای 8 × 8 محلی و غیر همپوشانی پیکسل ها به اضافه یک سطل زباله اضافی “بدون نقطه علاقه” است. پس از یک softmax از نظر کانال، بعد زبالهدان حذف میشود و یک تغییر شکل R Hc×Wc×64 ⇒ R H×W انجام میشود.
3.3. Descriptor Decoder
The descriptor head computes D ∈ R Hc×Wc×D and outputs a tensor sized R H×W×D. To output a dense map of L2- normalized fixed length descriptors, we use a model similar to UCN [3] to first output a semi-dense grid of descriptors (e.g., one every 8 pixels). Learning descriptors semidensely rather than densely reduces training memory and keeps the run-time tractable. The decoder then performs bicubic interpolation of the descriptor and then L2-normalizes the activations to be unit length. This fixed, non-learned descriptor decoder is shown in Figure 3
3.3. رمزگشای توصیفگر
توصیفگر D ∈ R Hc × Wc × D را محاسبه می کند و یک تانسور به اندازه R H × W × D را خروجی می دهد. برای خروجی یک نگاشت متراکم از توصیفگرهای با طول ثابت نرمال شده L2، از مدلی مشابه UCN [3] استفاده می کنیم تا ابتدا یک شبکه نیمه متراکم از توصیفگرها (به عنوان مثال، یک در هر 8 پیکسل) خروجی دهیم. یادگیری توصیفگرها به طور نیمه فشرده به جای فشرده، حافظه آموزشی را کاهش می دهد و زمان اجرا را قابل تحمل نگه می دارد. سپس رمزگشا درون یابی دو مکعبی توصیفگر را انجام می دهد و سپس L2 نرمال سازی را به اندازه طول واحد نرمال می کند. این رمزگشای توصیفگر ثابت و آموخته نشده در شکل 3 نشان داده شده است
3.4. Loss Functions
The final loss is the sum of two intermediate losses: one for the interest point detector, Lp, and one for the descriptor, Ld. We use pairs of synthetically warped images which have both (a) pseudo-ground truth interest point locations and (b) the ground truth correspondence from a randomly generated homography H which relates the two images.This allows us to optimize the two losses simultaneously, given a pair of images, as shown in Figure 2c. We use λ to balance the final loss:
L(X , X0, D, D0; Y, Y 0, S) =Lp(X , Y ) + Lp(X0, Y 0) + λLd(D, D0, S). (1)
The interest point detector loss function Lp is a fully convolutional cross-entropy loss over the cells xhw X . We call the set of corresponding ground-truth interest point labels2 Y and individual entries as yhw. The loss is:
The descriptor loss is applied to all pairs of descriptor cells, dhw ∈ D from the first image and d0 h0w0 ∈ D0 from the second image. The homography-induced correspondence between the (h, w) cell and the (h0, w0) cell can be written as follows:
3.4. توابع از دست دادن
تابع هزینه نهایی مجموع دو تابع ضرر میانی است: یکی برای آشکارساز نقطه کلیدی، Lp، و دیگری برای توصیفگر، Ld. ما از جفتهایی از تصاویر تغییر داده شده مصنوعی استفاده میکنیم که هم (الف) مکانهای نقطهی علاقهیشبه گراند تورث و (ب) هم مطابقت گراند تورث از یک هموگرافی H که بهطور تصادفی ایجاد شده است که دو تصویر را به هم مرتبط میکند، استفاده میکنیم. یک جفت تصویر، همانطور که در شکل 2c نشان داده شده است. برای متعادل کردن ضرر نهایی از λ استفاده می کنیم:
L(X، X0، D، D0؛ Y، Y 0، S) =Lp(X، Y) + Lp(X0، Y0) + λLd(D، D0، S). (1)
تابع هزینه آشکارساز نقطه کلیدی Lp یک افت آنتروپی متقاطع کاملاً کانولوشنی روی سلولهای xhw X است. ما مجموعه ای از برچسب های نقطه علاقه گراند تورث متناظر را Y و ورودی های فردی را yhw می نامیم. ضرر این است:
تابع هزینه توصیفگر برای همه جفت سلول های توصیفگر اعمال می شود، dhw ∈ D از تصویر اول و d0 h0w0 ∈ D0 از تصویر دوم. همبستگی ناشی از هموگرافی بین سلول (h, w) و سلول (h0, w0) را می توان به صورت زیر نوشت: