CN111080525A - Distributed image and primitive splicing method based on SIFT (Scale invariant feature transform) features - Google Patents
Distributed image and primitive splicing method based on SIFT (Scale invariant feature transform) features Download PDFInfo
- Publication number
- CN111080525A CN111080525A CN201911319821.0A CN201911319821A CN111080525A CN 111080525 A CN111080525 A CN 111080525A CN 201911319821 A CN201911319821 A CN 201911319821A CN 111080525 A CN111080525 A CN 111080525A
- Authority
- CN
- China
- Prior art keywords
- primitive
- image
- computing node
- master
- library
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 239000013598 vector Substances 0.000 claims abstract description 12
- 238000004364 calculation method Methods 0.000 claims abstract description 7
- 238000007781 pre-processing Methods 0.000 claims abstract description 5
- 239000000284 extract Substances 0.000 claims abstract description 3
- 239000000463 material Substances 0.000 claims description 15
- 239000000523 sample Substances 0.000 claims description 15
- 239000011159 matrix material Substances 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 9
- 230000009466 transformation Effects 0.000 claims description 8
- 238000007667 floating Methods 0.000 claims description 6
- 230000004927 fusion Effects 0.000 claims description 5
- 238000007499 fusion processing Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 3
- 238000005286 illumination Methods 0.000 claims description 3
- 238000002360 preparation method Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 238000005070 sampling Methods 0.000 claims description 2
- 230000002194 synthesizing effect Effects 0.000 claims description 2
- 238000000605 extraction Methods 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000007500 overflow downdraw method Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
Abstract
A distributed image and primitive splicing method based on SIFT features divides a main computing node and sub computing nodes by establishing a distributed heterogeneous parallel system; the method comprises the steps of utilizing obtained image samples to be spliced to carry out image preprocessing, and uploading the preprocessed image samples to a main computing node to serve as a global image library; initializing a local image library and a primitive cell library of each sub-computing node; each sub-computing node pre-extracts feature points of all images in the local image library by utilizing an SIFT algorithm, stores the calculated high-dimensional feature vectors into corresponding data structures, and simultaneously marks the images in the local image library as a state to be spliced; each sub-computing node is spliced and circulated locally; the global graphics primitive is fused, updated and broadcasted; and controlling the task flow of the main computing node. The splicing method optimizes and improves the complexity of splicing calculation aiming at the aspects of feature extraction, matching and the like of mass images, and optimizes algorithm design and realizes module functions by applying parallelism in a scene operation flow.
Description
Technical Field
The invention belongs to the technical field of computer image processing, and particularly relates to a distributed image and primitive splicing method based on SIFT (scale invariant feature transform) characteristics aiming at a massive image splicing application scene.
Background
The image stitching technology is a hot research object in the field of computer image processing, and the most intuitive image description is a technology for stitching a group of images with overlapped areas into a panoramic image with higher resolution and wider visual angle, which is originally started from the data processing requirements in the fields of satellite remote sensing, map databases and the like. With the rapid progress of information technology, computers and microelectronic technology, the requirements of more industrial fields such as medical research, robot research and development, military reconnaissance and aerial photography and the like on image splicing technology are higher and higher, and especially the popularization of equipment such as smart phones, digital cameras, unmanned aerial vehicles and VR virtual reality and the like at present enables the technical threshold and the cost for obtaining high-definition images to be lower and lower. However, since the shooting device is limited by performance parameters such as the imaging optical principle and resolution of the device, and the field of view of a single picture is still limited, people expect to splice a large amount of image materials obtained by multiple shooting to obtain a similar panorama.
At present, an image stitching method based on feature matching is widely adopted, a Scale-invariant feature transform (Scale-invariant feature transform) based SIFT feature matching method proposed by David Lowe has revolutionary influence on the image stitching industry, and various improvements and variant algorithms such as SURF, ORB, BRISK and the like for the sake of reference to the principle appear later, and the image stitching method has advantages and disadvantages. The SIFT feature matching method has strong robustness on translation, rotation, scaling and affine transformation of images, but the principle is complex, the workload of high-dimensional vector Euclidean distance calculation in feature point extraction, feature descriptor generation and matching is large, the time efficiency is limited, and especially in the application scene aiming at massive image splicing, the low-efficiency defect is obvious.
Aiming at the task of splicing massive images based on the SIFT method, people naturally propose a distributed parallel mechanism, and particularly adopt the performance improvement method in the field of unmanned aerial vehicle aerial photography in a large quantity. However, the implementation of these methods often has certain limitations, for example, before parallelization processing of image splicing, the splicing sequence of the pictures needs to be known in advance. This additional "sequential" prior information is more demanding on the pre-processing of the acquired image material and also limits the scalability of the relevant parallel solution.
Disclosure of Invention
The invention aims to solve the technical problem of a distributed image and primitive splicing method based on SIFT features, and aims to introduce a GPU heterogeneous parallel mechanism to further accelerate feature extraction, feature vector generation and high-dimensional feature vector Euclidean distance calculation in traditional SIFT feature matching.
In order to solve the technical problem, the invention is realized by the following modes:
a distributed image and primitive splicing method based on SIFT features specifically comprises the following steps:
1) computing environment and data preparation
1-1) establishing an available distributed heterogeneous parallel software and hardware system, and definitely dividing a master computing node master and a slave computing node noder;
1-2) obtaining mass image sample materials to be spliced;
1-3) carrying out image preprocessing, namely carrying out image denoising and gray level equalization transformation, so that the illumination brightness of the obtained image sample material is consistent and the image characteristics are clear and obvious;
1-4) uploading all the preprocessed image sample materials to a master computing node master, and using the master computing node master as a global image library;
2) distributed heterogeneous parallel algorithm module initialization
2-1) initializing each sub-computation node order local image library: the main computing node matrix uniformly distributes image sample materials in the global image library to each sub-computing node as a local image library, and different sub-computing node nodes are distributed to task data sets belonging to the main computing node matrix and ensure load balance;
2-2) initializing a primitive cell library: randomly selecting one from an uploaded image sample material set by a master computing node master, constructing an initial primitive library, splitting the graph in a primitive cell reference system according to a preset primitive scale constant, generating a coordinate number [ xIndex, yIndex ] for each split primitive, storing the coordinate number [ xIndex, yIndex ] in a global primitive library of the master computing node master, and broadcasting the initial primitive cell library to a sub-computing node noder by the master computing node master to serve as a local primitive library;
2-3) extracting the feature points of all images in the local image library in advance by using an SIFT algorithm by each sub-computation node, storing the calculated high-dimensional feature vector information into a corresponding data structure, and simultaneously marking all the images in the local image library as a state to be spliced;
3) distributed heterogeneous parallel algorithm load calculation
3-1) local splicing circulation of the sub-computing nodes noder;
3-2) global primitive fusion updating and broadcasting;
3-3) controlling the task flow of the master computing node master.
Compared with the prior art, the invention has the following beneficial effects:
first, the distributed algorithm in this patent is directed at a massive image splicing scene, where the required images are derived from the shot materials in the view field, and there is no requirement for sequential splicing among the images, i.e., there is no restriction requirement for the image materials to be arranged and named in sequence, or even there is no requirement for the images that must be shot in the same time batch, and the master computing node master set in the distributed splicing algorithm randomly and equally distributes all the image materials to each sub-computing node order, and the image materials used to establish the initial primitive library are also randomly selected.
And secondly, in a local splicing cycle on each sub-computing node order, an automatic polling mechanism is adopted, namely all unmarked images to be spliced in a local image library are spliced with a global and local dynamically expanded primitive library, no human intervention operation is needed in the whole processing flow, and the algorithm is used for carrying out feature matching computation control on the images.
Thirdly, aiming at the computation-intensive operations of relevant feature description extraction, feature point pair matching and the like in the SIFT method, each sub-computation node can be configured with a GPU (graphics processing unit) graphics accelerator, and further accelerated processing is carried out by utilizing a CUDA (compute unified device architecture) heterogeneous parallel programming method, so that the distributed algorithm solution has the property of easy expansion of dynamic performance optimization.
Drawings
Fig. 1 is a schematic diagram of an initialization process of a distributed heterogeneous parallel algorithm module according to the present invention.
Fig. 2 is a schematic diagram of a local splicing loop flow of the child computing node of the present invention.
FIG. 3 is a schematic diagram of the process of fusion update and broadcast of global primitives according to the present invention.
Detailed Description
The following detailed description of embodiments of the invention is provided in connection with the accompanying drawings and the specific examples.
A distributed image and primitive splicing method based on SIFT features specifically comprises the following steps:
1) computing environment and data preparation
1-1) establishing an available distributed heterogeneous parallel software and hardware system, and definitely dividing a master computing node master and a slave computing node noder;
1-2) obtaining mass image sample materials to be spliced;
1-3) carrying out image preprocessing, namely carrying out image denoising and gray level equalization transformation, so that the illumination brightness of the obtained image sample material is consistent and the image characteristics are clear and obvious;
1-4) uploading all the preprocessed image sample materials to a master computing node master, and using the master computing node master as a global image library;
2) the distributed heterogeneous parallel algorithm module is initialized, as shown in figure 1,
2-1) initializing each sub-computation node order local image library: the main computing node matrix uniformly distributes image sample materials in the global image library to each sub-computing node as a local image library, and different sub-computing node nodes are distributed to task data sets belonging to the main computing node matrix and ensure load balance;
2-2) initializing a primitive cell library: randomly selecting one from an uploaded image sample material set by a master computing node master, constructing an initial primitive library, splitting the graph in a primitive cell reference system according to a preset primitive scale constant, generating a coordinate number [ xIndex, yIndex ] for each split primitive, storing the coordinate number [ xIndex, yIndex ] in a global primitive library of the master computing node master, and broadcasting the initial primitive cell library to a sub-computing node noder by the master computing node master to serve as a local primitive library;
2-3) extracting the feature points of all images in the local image library in advance by using an SIFT algorithm by each sub-computation node, storing the calculated high-dimensional feature vector information into a corresponding data structure, and simultaneously marking all the images in the local image library as a state to be spliced;
3) distributed heterogeneous parallel algorithm load calculation
3-1) local splicing circulation of the sub-computing nodes noder; as shown in fig. 2
3-1-1) each sub-computing node updates local primitive cell library data, and extracts feature point information of all primitives and calculates high-dimensional feature vectors by using an SIFT algorithm;
3-1-2) selecting an image in a to-be-spliced state from the local image library, and trying to match feature points of the image with all the primitives in the primitive cell library;
3-1-3) if the Euclidean distance matched with the SIFT feature points is not met and is less than the splicing matching requirement of a set threshold, turning to the next image to be spliced for the same processing;
3-1-4) finding out the best matching primitive from the result meeting the matching requirement, wherein the best matching primitive is obtained by calculating the Euclidean distance of high-dimensional feature vectors of image and primitive matching pairs, sorting the Euclidean distance from low to high, counting feature point pairs smaller than a certain distance threshold in each matching pair, and selecting the situation with the most point pairs as the best matching;
screening and filtering the characteristic point pairs, specifically, setting a maximum Euclidean distance threshold maxThreshold (80.0) and an upper limit number threshold maxMatchNumThreshold (500), and simultaneously setting a floating coefficient index with an initial value of 0.01; taking the product of the floating coefficient index and the maximum distance value max _ distance in the matching pair as a temporary distance threshold tempThreshold, wherein the temporary distance threshold does not exceed the maximum Euclidean distance threshold, calculating the number of point pairs of which the Euclidean distance in the matching pair is smaller than the maximum Euclidean distance threshold, and if the number of the point pairs is smaller than the upper limit number threshold of the point pairs, increasing the floating coefficient index value by 0.01, and then repeatedly circulating the process for 100 times; if the temporary distance threshold exceeds the maximum Euclidean distance threshold or the number of the point pairs smaller than the temporary distance threshold exceeds the point pair upper limit number threshold, terminating the iteration, taking the temporary distance threshold at the moment as the final Euclidean distance threshold for screening and filtering, and rejecting all the feature matching point pairs higher than the Euclidean distance threshold.
3-1-5) utilizing RANSAC random sampling consistency algorithm to further finely screen the feature matching points screened in the step 3-1-4), thereby calculating and obtaining an accurate coordinate transformation matrix of the selected image projection mapping to the optimal matching primitive space;
3-1-6) completing image and primitive splicing according to the coordinate transformation matrix, splitting the result in a primitive cell coordinate system based on the position of the optimal primitive, generating a corresponding primitive coordinate number [ xIndex, yIndex ], and returning to the step 3-1-1).
And 3-1-6), if the numbers of all the new primitives split in the step are the same as the original primitive numbers, performing fusion processing to avoid data redundancy and subsequent repeated calculation of the local primitive cell library. This patent is through using effective pixel region in the mask mode mark image, and the primitive fuses the rule and is: the areas of the two primitive cells with the same number, which are respectively marked as 0, of the mask masks at the same pixel position represent invalid pixels (the value is set as 0), the areas of the masks, which are respectively marked as 255, represent overlapping, a linear average fusion method is used for fusion processing, otherwise, the effective pixels of the primitives, which are marked as 255, are directly used to form final fusion primitives, and the mask masks of the fused primitives are updated and calculated according to the final pixel validity.
3-2) global primitive fusion updating and broadcasting; as shown in fig. 3
3-2-1) circularly iterating each sub-computing node until no new primitive is generated in the primitive cell library on the node (equivalent to that no new splicing success event occurs locally);
3-2-2) if the number of the images in the to-be-spliced state in the node local image library is reduced, indicating that the node contributes to the updating of the global primitive cell library, sending the node local primitive cell library back to the master computing node master, and then waiting for an updating message sent by the master computing node master;
3-2-3) if the number of the images in the to-be-spliced state in the local image library of the node is kept unchanged, the node does not contribute to updating the global primitive cell library, a special null event message is sent back, unnecessary node communication is reduced, and an updating message transmitted by a master computing node master is also waited.
3-3) Master task flow control of the Master computing node
3-3-1) after the master computing node master completes the distribution of the global image library and the broadcasting operation of the global primitive cell library, waiting for and receiving the messages transmitted by each sub-computing node, and counting the distributed image and primitive splicing state on each sub-computing node order;
3-3-2) as long as the sub-computation node noder sends back the non-empty event message, fusing the returned node local primitive cell library into a global primitive cell library, and broadcasting the final result after fusion processing again to enable each sub-computation node noder to enter the next round of splicing iteration;
3-3-3) if all the sub-computing nodes noders send back empty event messages, indicating that the task of splicing the distributed images and the primitives is finished, broadcasting a splicing finishing message by a master node master, and synthesizing all the primitives in the global primitive cell library into a large graph according to the coordinates of the corresponding primitive cell coordinate system as a final result to be output;
3-3-4) after each sub-computation node receives the splicing completion broadcast message, releasing the related resources applied by the node and quitting.
The steps of establishing a scale space in the relevant SIFT feature point extraction operation, including a Gaussian pyramid, a Dog pyramid, extreme value detection of the scale space, accurate positioning of extreme points and the like, are realized by adopting a mature OpenCV open source library.
Aiming at the Euclidean distance of the high-dimensional feature vector calculated in the step 3-1-4), a GPU acceleration mechanism is adopted, and the specific implementation scheme is CUDA programming development specification issued by NVIDIA company.
The foregoing is illustrative of embodiments of the present invention and it will be further appreciated by those skilled in the art that various modifications may be made without departing from the principles of the invention and that such modifications are intended to be included within the scope of the appended claims.
Claims (5)
1. A distributed image and primitive splicing method based on SIFT features is characterized in that: the method comprises the following steps:
1) computing environment and data preparation
1-1) establishing an available distributed heterogeneous parallel software and hardware system, and definitely dividing a master computing node master and a slave computing node noder;
1-2) obtaining mass image sample materials to be spliced;
1-3) carrying out image preprocessing, namely carrying out image denoising and gray level equalization transformation, so that the illumination brightness of the obtained image sample material is consistent and the image characteristics are clear and obvious;
1-4) uploading all the preprocessed image sample materials to a master computing node master, and using the master computing node master as a global image library;
2) distributed heterogeneous parallel algorithm module initialization
2-1) initializing each sub-computation node order local image library: the main computing node matrix uniformly distributes image sample materials in the global image library to each sub-computing node as a local image library, and different sub-computing node nodes are distributed to task data sets belonging to the main computing node matrix and ensure load balance;
2-2) initializing a primitive cell library: randomly selecting one from an uploaded image sample material set by a master computing node master, constructing an initial primitive library, splitting the graph in a primitive cell reference system according to a preset primitive scale constant, generating a coordinate number [ xIndex, yIndex ] for each split primitive, storing the coordinate number [ xIndex, yIndex ] in a global primitive library of the master computing node master, and broadcasting the initial primitive cell library to a sub-computing node noder by the master computing node master to serve as a local primitive library;
2-3) extracting the feature points of all images in the local image library in advance by using an SIFT algorithm by each sub-computation node, storing the calculated high-dimensional feature vector information into a corresponding data structure, and simultaneously marking all the images in the local image library as a state to be spliced;
3) distributed heterogeneous parallel algorithm load calculation
3-1) local splicing circulation of the sub-computing nodes noder;
3-2) global primitive fusion updating and broadcasting;
3-3) controlling the task flow of the master computing node master.
2. The distributed image and primitive splicing method based on SIFT features as claimed in claim 1, wherein: the specific process steps of the step 3-1) are as follows:
3-1-1) each sub-computing node updates local primitive cell library data, and extracts feature point information of all primitives and calculates high-dimensional feature vectors by using an SIFT algorithm;
3-1-2) selecting an image in a to-be-spliced state from the local image library, and trying to match feature points of the image with all the primitives in the primitive cell library;
3-1-3) if the Euclidean distance matched with the SIFT feature points is not met and is less than the splicing matching requirement of a set threshold, turning to the next image to be spliced for the same processing;
3-1-4) finding out the best matching primitive from the result meeting the matching requirement, wherein the best matching primitive is obtained by calculating the Euclidean distance of high-dimensional feature vectors of image and primitive matching pairs, sorting the Euclidean distance from low to high, counting feature point pairs smaller than a certain distance threshold in each matching pair, and selecting the situation with the most point pairs as the best matching;
3-1-5) utilizing RANSAC random sampling consistency algorithm to further finely screen the feature matching points screened in the step 3-1-4), thereby calculating and obtaining an accurate coordinate transformation matrix of the selected image projection mapping to the optimal matching primitive space;
3-1-6) completing image and primitive splicing according to the coordinate transformation matrix, splitting the result in a primitive cell coordinate system based on the position of the optimal primitive, generating a corresponding primitive coordinate number [ xIndex, yIndex ], and returning to the step 3-1-1).
3. The distributed image and primitive splicing method based on SIFT features as claimed in claim 1, wherein: the specific process steps of the step 3-2) are as follows:
3-2-1) circularly iterating each sub-computing node until no new primitive is generated in the primitive cell library on the node (equivalent to that no new splicing success event occurs locally);
3-2-2) if the number of the images in the to-be-spliced state in the node local image library is reduced, indicating that the node contributes to the updating of the global primitive cell library, sending the node local primitive cell library back to the master computing node master, and then waiting for an updating message sent by the master computing node master;
3-2-3) if the number of the images in the to-be-spliced state in the local image library of the node is kept unchanged, the node does not contribute to updating the global primitive cell library, a special null event message is sent back, unnecessary node communication is reduced, and an updating message transmitted by a master computing node master is also waited.
4. The distributed image and primitive splicing method based on SIFT features as claimed in claim 1, wherein: the specific process steps of the step 3-3) are as follows:
3-3-1) after the master computing node master completes the distribution of the global image library and the broadcasting operation of the global primitive cell library, waiting for and receiving the messages transmitted by each sub-computing node, and counting the distributed image and primitive splicing state on each sub-computing node order;
3-3-2) as long as the sub-computation node noder sends back the non-empty event message, fusing the returned node local primitive cell library into a global primitive cell library, and broadcasting the final result after fusion processing again to enable each sub-computation node noder to enter the next round of splicing iteration;
3-3-3) if all the sub-computing nodes noders send back empty event messages, indicating that the task of splicing the distributed images and the primitives is finished, broadcasting a splicing finishing message by a master node master, and synthesizing all the primitives in the global primitive cell library into a large graph according to the coordinates of the corresponding primitive cell coordinate system as a final result to be output;
3-3-4) after each sub-computation node receives the splicing completion broadcast message, releasing the related resources applied by the node and quitting.
5. The distributed image and primitive splicing method based on SIFT features as claimed in claim 2, wherein: the specific process steps of the step 3-1-4) are as follows:
firstly, setting a maximum Euclidean distance threshold maxThreshold (80.0) and a point-to-upper-limit quantity threshold maxMatchNumThreshold (500), and simultaneously setting a floating coefficient index with an initial value of 0.01; taking the product of the floating coefficient index and the maximum distance value max _ distance in the matching pair as a temporary distance threshold tempThreshold, wherein the temporary distance threshold does not exceed the maximum Euclidean distance threshold, calculating the number of point pairs of which the Euclidean distance in the matching pair is smaller than the maximum Euclidean distance threshold, and if the number of the point pairs is smaller than the upper limit number threshold of the point pairs, increasing the floating coefficient index value by 0.01, and then repeatedly circulating the process for 100 times; if the temporary distance threshold exceeds the maximum Euclidean distance threshold or the number of the point pairs smaller than the temporary distance threshold exceeds the point pair upper limit number threshold, terminating the iteration, taking the temporary distance threshold at the moment as the final Euclidean distance threshold for screening and filtering, and rejecting all the feature matching point pairs higher than the Euclidean distance threshold.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911319821.0A CN111080525B (en) | 2019-12-19 | 2019-12-19 | Distributed image and graphic primitive splicing method based on SIFT features |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911319821.0A CN111080525B (en) | 2019-12-19 | 2019-12-19 | Distributed image and graphic primitive splicing method based on SIFT features |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111080525A true CN111080525A (en) | 2020-04-28 |
CN111080525B CN111080525B (en) | 2023-04-28 |
Family
ID=70315881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911319821.0A Active CN111080525B (en) | 2019-12-19 | 2019-12-19 | Distributed image and graphic primitive splicing method based on SIFT features |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111080525B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111401482A (en) * | 2020-04-29 | 2020-07-10 | Oppo广东移动通信有限公司 | Feature point matching method and device, equipment and storage medium |
CN114769021A (en) * | 2022-04-24 | 2022-07-22 | 广东天太机器人有限公司 | Robot spraying system and method based on full-angle template recognition |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100008886A (en) * | 2008-07-17 | 2010-01-27 | 서울대학교산학협력단 | The method of automatic geometric correction for multi-resolution satellite images using scale invariant feature transform |
US20120076409A1 (en) * | 2010-09-29 | 2012-03-29 | Hitachi, Ltd. | Computer system and method of matching for images and graphs |
CN102496033A (en) * | 2011-12-05 | 2012-06-13 | 西安电子科技大学 | Image SIFT feature matching method based on MR computation framework |
US20120301014A1 (en) * | 2011-05-27 | 2012-11-29 | Microsoft Corporation | Learning to rank local interest points |
CN102968777A (en) * | 2012-11-20 | 2013-03-13 | 河海大学 | Image stitching method based on overlapping region scale-invariant feather transform (SIFT) feature points |
CN103426153A (en) * | 2013-07-24 | 2013-12-04 | 广州地理研究所 | Unmanned aerial vehicle remote sensing image quick splicing method |
CN105245841A (en) * | 2015-10-08 | 2016-01-13 | 北京工业大学 | CUDA (Compute Unified Device Architecture)-based panoramic video monitoring system |
CN105590086A (en) * | 2014-11-17 | 2016-05-18 | 西安三茗科技有限责任公司 | Article antitheft detection method based on visual tag identification |
CN107067370A (en) * | 2017-04-12 | 2017-08-18 | 长沙全度影像科技有限公司 | A kind of image split-joint method based on distortion of the mesh |
WO2018103179A1 (en) * | 2016-12-09 | 2018-06-14 | 西北大学 | Near-duplicate image detection method based on sparse representation |
US20180197297A1 (en) * | 2016-09-13 | 2018-07-12 | Intelligent Fusion Technology, Inc | System and method for detecting and tracking multiple moving targets based on wide-area motion imagery |
WO2019047284A1 (en) * | 2017-09-05 | 2019-03-14 | 平安科技(深圳)有限公司 | Methods for feature extraction and panoramic stitching, and apparatus thereof, device, readable storage medium |
CN109493278A (en) * | 2018-10-24 | 2019-03-19 | 北京工业大学 | A kind of large scene image mosaic system based on SIFT feature |
CN109636714A (en) * | 2018-08-30 | 2019-04-16 | 沈阳聚声医疗系统有限公司 | A kind of image split-joint method of ultrasonic wide-scene imaging |
CN109801212A (en) * | 2018-12-26 | 2019-05-24 | 南京信息职业技术学院 | Fish-eye image splicing method based on SIFT features |
CN109951922A (en) * | 2019-04-03 | 2019-06-28 | 深圳市南方海擎科技有限公司 | A kind of light source light spectrum self-correcting and self-test closed-loop control system and its control method |
CN110225315A (en) * | 2019-07-12 | 2019-09-10 | 北京派克盛宏电子科技有限公司 | Electric system screen monitored picture fusion method |
CN110232673A (en) * | 2019-05-30 | 2019-09-13 | 电子科技大学 | A kind of quick steady image split-joint method based on medical micro-imaging |
-
2019
- 2019-12-19 CN CN201911319821.0A patent/CN111080525B/en active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100008886A (en) * | 2008-07-17 | 2010-01-27 | 서울대학교산학협력단 | The method of automatic geometric correction for multi-resolution satellite images using scale invariant feature transform |
US20120076409A1 (en) * | 2010-09-29 | 2012-03-29 | Hitachi, Ltd. | Computer system and method of matching for images and graphs |
US20120301014A1 (en) * | 2011-05-27 | 2012-11-29 | Microsoft Corporation | Learning to rank local interest points |
CN102496033A (en) * | 2011-12-05 | 2012-06-13 | 西安电子科技大学 | Image SIFT feature matching method based on MR computation framework |
CN102968777A (en) * | 2012-11-20 | 2013-03-13 | 河海大学 | Image stitching method based on overlapping region scale-invariant feather transform (SIFT) feature points |
CN103426153A (en) * | 2013-07-24 | 2013-12-04 | 广州地理研究所 | Unmanned aerial vehicle remote sensing image quick splicing method |
CN105590086A (en) * | 2014-11-17 | 2016-05-18 | 西安三茗科技有限责任公司 | Article antitheft detection method based on visual tag identification |
CN105245841A (en) * | 2015-10-08 | 2016-01-13 | 北京工业大学 | CUDA (Compute Unified Device Architecture)-based panoramic video monitoring system |
US20180197297A1 (en) * | 2016-09-13 | 2018-07-12 | Intelligent Fusion Technology, Inc | System and method for detecting and tracking multiple moving targets based on wide-area motion imagery |
WO2018103179A1 (en) * | 2016-12-09 | 2018-06-14 | 西北大学 | Near-duplicate image detection method based on sparse representation |
CN107067370A (en) * | 2017-04-12 | 2017-08-18 | 长沙全度影像科技有限公司 | A kind of image split-joint method based on distortion of the mesh |
WO2019047284A1 (en) * | 2017-09-05 | 2019-03-14 | 平安科技(深圳)有限公司 | Methods for feature extraction and panoramic stitching, and apparatus thereof, device, readable storage medium |
CN109636714A (en) * | 2018-08-30 | 2019-04-16 | 沈阳聚声医疗系统有限公司 | A kind of image split-joint method of ultrasonic wide-scene imaging |
CN109493278A (en) * | 2018-10-24 | 2019-03-19 | 北京工业大学 | A kind of large scene image mosaic system based on SIFT feature |
CN109801212A (en) * | 2018-12-26 | 2019-05-24 | 南京信息职业技术学院 | Fish-eye image splicing method based on SIFT features |
CN109951922A (en) * | 2019-04-03 | 2019-06-28 | 深圳市南方海擎科技有限公司 | A kind of light source light spectrum self-correcting and self-test closed-loop control system and its control method |
CN110232673A (en) * | 2019-05-30 | 2019-09-13 | 电子科技大学 | A kind of quick steady image split-joint method based on medical micro-imaging |
CN110225315A (en) * | 2019-07-12 | 2019-09-10 | 北京派克盛宏电子科技有限公司 | Electric system screen monitored picture fusion method |
Non-Patent Citations (2)
Title |
---|
柯磊等: "基于加窗SIFT和分布式优化的多图自动拼接算法", 《现代电子技术》 * |
陆应通等: "基于InfiniBand集群并行全景图拼接系统设计", 《四川大学学报(自然科学版)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111401482A (en) * | 2020-04-29 | 2020-07-10 | Oppo广东移动通信有限公司 | Feature point matching method and device, equipment and storage medium |
CN111401482B (en) * | 2020-04-29 | 2024-03-19 | Oppo广东移动通信有限公司 | Feature point matching method and device, equipment and storage medium |
CN114769021A (en) * | 2022-04-24 | 2022-07-22 | 广东天太机器人有限公司 | Robot spraying system and method based on full-angle template recognition |
Also Published As
Publication number | Publication date |
---|---|
CN111080525B (en) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Surrounding vehicle detection using an FPGA panoramic camera and deep CNNs | |
CN111968129B (en) | Instant positioning and map construction system and method with semantic perception | |
CN109509255B (en) | Tagged map construction and space map updating method and device | |
JP2020507850A (en) | Method, apparatus, equipment, and storage medium for determining the shape of an object in an image | |
Schöning et al. | Evaluation of multi-view 3D reconstruction software | |
CN111553939B (en) | Image registration algorithm of multi-view camera | |
CN110648397A (en) | Scene map generation method and device, storage medium and electronic equipment | |
CN115641401A (en) | Construction method and related device of three-dimensional live-action model | |
CN111080525B (en) | Distributed image and graphic primitive splicing method based on SIFT features | |
CN111986296B (en) | CG animation synthesis method for bullet time | |
WO2021035627A1 (en) | Depth map acquisition method and device, and computer storage medium | |
CN114143528A (en) | Multi-video stream fusion method, electronic device and storage medium | |
CN112288878B (en) | Augmented reality preview method and preview device, electronic equipment and storage medium | |
CN115330594A (en) | Target rapid identification and calibration method based on unmanned aerial vehicle oblique photography 3D model | |
CN116097307A (en) | Image processing method and related equipment | |
CN117197388A (en) | Live-action three-dimensional virtual reality scene construction method and system based on generation of antagonistic neural network and oblique photography | |
CN113379748A (en) | Point cloud panorama segmentation method and device | |
Zhao et al. | Fast georeferenced aerial image stitching with absolute rotation averaging and planar-restricted pose graph | |
Gao et al. | Multi-source data-based 3D digital preservation of largescale ancient chinese architecture: A case report | |
CN116740488B (en) | Training method and device for feature extraction model for visual positioning | |
CN117593620A (en) | Multi-target detection method and device based on fusion of camera and laser radar | |
WO2018100230A1 (en) | Method and apparatuses for determining positions of multi-directional image capture apparatuses | |
CN115937452A (en) | Map reconstruction method and system based on distributed computation | |
CN111260544B (en) | Data processing method and device, electronic equipment and computer storage medium | |
CN108986183B (en) | Method for manufacturing panoramic map |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |