CN112835651B - Multipath image parallel decoding processing method - Google Patents
Multipath image parallel decoding processing method Download PDFInfo
- Publication number
- CN112835651B CN112835651B CN202110359720.7A CN202110359720A CN112835651B CN 112835651 B CN112835651 B CN 112835651B CN 202110359720 A CN202110359720 A CN 202110359720A CN 112835651 B CN112835651 B CN 112835651B
- Authority
- CN
- China
- Prior art keywords
- decoding
- function
- dynamic link
- images
- image
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
The application discloses a multi-path image parallel decoding processing method which is suitable for a scene of decoding multi-path images of a missile by using a C++ compiled program. The specific method comprises the following steps: a. copying n copies of the dynamic link library containing the decoding function through a main program to obtain n copied dynamic link libraries containing the decoding function, which are named as decoder 1.Dll, decoder 2.Dll, and decoder. Dll respectively, wherein n is equal to the number of paths of images to be decoded; b. when the main program needs to decode n paths of images, each path of images is delivered to a copied dynamic link library containing decoding functions for image decoding. The method reduces the software development cost and the software verification time, ensures the reliability of the software, is beneficial to multi-thread calling, improves the decoding efficiency, and can flexibly and rapidly expand the image decoding capability according to the requirement.
Description
Technical Field
The application belongs to the technical field of missile image data processing, and particularly relates to a multipath image parallel decoding processing method.
Background
With the development of missile technologies such as image guidance, monitoring and evaluation, the transmission and telemetry of video image signals are more and more in missile development, test and application, video images are very necessary for analyzing abnormal states of a seeker of an image guided missile in the flying process, fault analysis and positioning of some missiles are easier than that of the conventional missile by means of existing telemetry data analysis, and video image information is relatively more visual.
However, the missile image data volume is huge, the telemetry wireless channel capacity is limited, the image is transmitted after being compressed, the image compression often comprises a plurality of algorithms with complex columns such as data transformation, coefficient coding, anti-interference coding and the like, and a windows platform at a receiving end needs to perform a corresponding series of inverse operations after receiving the compressed image to restore the image data.
In the initial stage, missile image data only has one path of data, researchers construct a whole image data receiving and decoding processing system by using C++ language, and along with the development of the requirements and technology of missile image data transmission, researchers start to transmit and receive multiple paths of missile image data, and when the transmission, the reception and the processing of the multiple paths of missile image data are carried out, the technical problem that the prior one path of data cannot be met is solved.
When the prior path of data is received and processed, the process of the main program of the whole system calls a dynamic link library containing a decoding module to decode the received image data, the decoding module contains a decoding function, the problems of a method and function multiplexing are solved, the code execution efficiency of the whole system is as high as possible, and the required storage space is as small as possible.
If the dynamic link library is directly modified, the decoding module needs to be rewritten, the difficulty is high, the verification period is long, the condition that the image road number is continuously changed is difficult to adapt, and it is not practical to rewrite the decoding module as long as the image road number is changed, and the workload, the working difficulty and the verification period are too large.
Disclosure of Invention
In order to solve the problems in the background technology, the application provides a multi-path image parallel decoding processing method.
A multi-path image parallel decoding processing method is suitable for a scene of decoding multi-path images of a missile by using a C++ compiled program,
a. copying n copies of the dynamic link library containing the decoding function through a main program to obtain n copied dynamic link libraries containing the decoding function, which are named as decoder 1.Dll, decoder 2.Dll, and decoder. Dll respectively, wherein n is equal to the number of paths of images to be decoded;
b. when the main program needs to decode n paths of images, each path of images is delivered to a copied dynamic link library containing decoding functions for image decoding.
Further, in step b, it is necessary to dynamically load a decoding 1.Dll, a decoding 2.Dll, and a decoding 2.Dll in the main program, and to define a function pointer type corresponding to the decoding function in the main program, and declare the type of the function pointer variable to be the function pointer type corresponding to the decoding function, and then to point the n function pointer variables to addresses of the decoding function in the n copied dynamic link libraries containing the decoding function, respectively, so as to implement image decoding by submitting each image to a copied dynamic link library containing the decoding function when n image decoding is performed.
Further, when dynamically loading n copied dynamic link libraries containing decoding functions, the LoadLibrary () function is used to finally realize the dynamic loading of n copied dynamic link libraries containing decoding functions. The n dynamic link libraries are mapped in different addresses without interference by dynamically loading the n copied dynamic link libraries containing decoding functions.
Further, defining the function pointer type corresponding to the decoding function in the main program means that the return value type, the required parameter type, and the number of required parameters of the function pointer type agree with the return value type, the required parameter type, and the number of required parameters of the decoding function.
Further, when n function pointer variables are respectively pointed to addresses of decoding functions in a dynamic link library containing decoding functions, which are n copies in total, the addresses of decoding functions in the dynamic link library are acquired using a GetProcAddress () function.
Compared with the prior art, the technical scheme disclosed by the application has the following beneficial effects:
1. the original dynamic link library which can only decode one path of image is not required to be modified, and the original dynamic link library is directly copied into a plurality of copies and is dynamically loaded in the main program, so that the main program maps the dynamic link libraries to different address spaces, the software development cost and the software verification time are reduced, and meanwhile, the reliability of the software is ensured.
2. And each path of image can be decoded in parallel only by adding a small amount of codes into the C++ compiled main program, the decoding operations of any path of image have no influence on the decoding of other paths of images, the multi-thread calling is facilitated, and the decoding efficiency is improved.
3. The image decoding capability can be flexibly and rapidly expanded according to the requirement.
Detailed Description
The following description of the embodiments of the present application is provided for the purpose of illustrating the application, but not for the purpose of limiting the same, and all technical solutions that can be simply replaced, combined and developed on the basis of the present application shall fall within the scope of protection of the present application.
Example 1
Taking two paths of images as an example, a multi-path image parallel decoding processing method is suitable for a scene of decoding multi-path images of a missile by using a C++ compiled program,
a. 2 copies of the dynamic link library containing the decoding function are copied by the main program to obtain 2 copied dynamic link libraries containing the decoding function, which are named as decoder 1.Dll and decoder 2.Dll respectively;
b. first, in the main program, a dynamic link library containing decoding functions is dynamically loaded with 2 copies of decoding 1.Dll and decoding 2.Dll by using LoadLibrary () functions:
HINSTANCE hIns1=::LoadLibrary(“decode1”);
HINSTANCE hIns2=::LoadLibrary(“decode2”);
next, a function pointer type corresponding to the decoding function, that is, a return value type of the function pointer type, a required parameter type, the number of required parameters, and the return value type of the decoding function, the required parameter type, the number of required parameters, are required to be defined in the main program:
assume that the decoding function type is:
intGetImage(unsigned char*pCh,intnSize);
then the corresponding function pointer type is:
typedef int (signed challenge) pCh, intnSize; i.e. a type of function pointer is defined and is defined as a pointer to a function whose parameters are unsigned char p ch, intnSize and return type int, which in this embodiment is matched to the decoding function, i.e. the pointer is pointing to the decoding function.
The type of function pointer variable is then declared to be the function pointer type corresponding to the decoding function:
pgetimagepfn 1, pFn2; essentially pFn, pFn are thus two function pointer variables, the type of which is the function pointer type corresponding to the decoding function.
The 2 function pointer variables are then respectively pointed to addresses of decoding functions in a total of 2 replicated dynamically linked libraries containing decoding functions, wherein the addresses of decoding functions in the dynamically linked libraries are obtained using the GetProcAddress () function:
pFn1=(PGetImage)GetProcAddress(hIns1,"GetImage");
pFn2=(PGetImage)GetProcAddress(hIns2,"GetImage");
when the main program needs to decode 2-way images, pFn1 and pFn2 are used to decode 2-way images in parallel.
When n paths of images need to be decoded, by analogy of the method of the embodiment, only enough dynamic link libraries are copied, the dynamic link libraries are dynamically loaded, and enough function pointer variables are given at the same time, so that the decoding of n paths of images can be finished simultaneously through multithreading.
The application is not described in detail in the prior art.
Claims (3)
1. The parallel decoding processing method of the multipath image is suitable for a scene of decoding the multipath image of the missile by using a C++ compiled program, and is characterized in that:
a. copying n copies of the dynamic link library containing the decoding function through a main program to obtain n copied dynamic link libraries containing the decoding function, which are named as decoder 1.Dll, decoder 2.Dll, and decoder. Dll respectively, wherein n is equal to the number of paths of images to be decoded;
b. when the main program needs to decode n paths of images, each path of images is delivered to a copied dynamic link library containing decoding functions for image decoding;
in step b, a dynamic link library containing decoding functions, which is composed of n copies, of decoding 1.Dll, decoding 2.Dll, and n copies is required to be dynamically loaded in a main program, a function pointer type corresponding to the decoding function is required to be defined in the main program, the type of a function pointer variable is stated to be the function pointer type corresponding to the decoding function, and then n function pointer variables are respectively pointed to addresses of the decoding functions in the n copies of the dynamic link library containing the decoding function, so that when n copies of images are decoded, each image is delivered to one copy of the dynamic link library containing the decoding function to be decoded;
when n function pointer variables are respectively pointed to addresses of decoding functions in a dynamic link library containing the decoding functions, which are copied in total, the addresses of the decoding functions in the dynamic link library are acquired by using a GetProcAddress () function.
2. The multi-path image parallel decoding processing method as claimed in claim 1, wherein: when dynamically loading n copied dynamic link libraries containing decoding functions, the LoadLibrary () function is used to finally realize the dynamic loading of n copied dynamic link libraries containing decoding functions.
3. The multi-path image parallel decoding processing method as claimed in claim 1, wherein: defining a function pointer type corresponding to a decoding function in a main program means that a return value type, a required parameter type, and the number of required parameters of the function pointer type agree with the return value type, the required parameter type, and the number of required parameters of the decoding function.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110359720.7A CN112835651B (en) | 2021-04-01 | 2021-04-01 | Multipath image parallel decoding processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110359720.7A CN112835651B (en) | 2021-04-01 | 2021-04-01 | Multipath image parallel decoding processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112835651A CN112835651A (en) | 2021-05-25 |
CN112835651B true CN112835651B (en) | 2023-10-20 |
Family
ID=75930765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110359720.7A Active CN112835651B (en) | 2021-04-01 | 2021-04-01 | Multipath image parallel decoding processing method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112835651B (en) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1630370A (en) * | 2003-12-15 | 2005-06-22 | 联想(北京)有限公司 | A method of coding and decoding for data compression |
CN1972447A (en) * | 2006-12-08 | 2007-05-30 | 清华大学 | Multi-image player based on stream media technology and its playing method |
CN101179715A (en) * | 2006-11-30 | 2008-05-14 | 腾讯科技(深圳)有限公司 | Method and system of implementing compressed encoding simultaneously to multipath video source |
CN101783946A (en) * | 2010-01-30 | 2010-07-21 | 青岛海信网络科技股份有限公司 | Video decoding method, video decoder and video monitoring system |
CN101834854A (en) * | 2010-04-06 | 2010-09-15 | 北京交通大学 | Video transmission system of mobile phone |
CN101924666A (en) * | 2010-07-22 | 2010-12-22 | 中兴通讯股份有限公司 | Decoding realization method and system of signaling tracking |
CN102098503A (en) * | 2009-12-14 | 2011-06-15 | 中兴通讯股份有限公司 | Method and device for decoding image in parallel by multi-core processor |
CN102270158A (en) * | 2011-08-10 | 2011-12-07 | 深圳市万兴软件有限公司 | Application program multiprocess running method and device |
CN104704828A (en) * | 2012-10-03 | 2015-06-10 | 美国博通公司 | Bounded rate near-lossless and lossless image compression |
CN104980752A (en) * | 2015-06-11 | 2015-10-14 | 武汉大千信息技术有限公司 | Method for realizing multipath self-adaptive parallel transcoding through CPU and GPU and system thereof |
CN105187117A (en) * | 2015-08-12 | 2015-12-23 | 莱诺斯科技(北京)有限公司 | Satellite telemetering decoding system |
CN106878736A (en) * | 2017-03-17 | 2017-06-20 | 郑州云海信息技术有限公司 | A kind of method and apparatus of coding and decoding video |
CN107592118A (en) * | 2016-07-08 | 2018-01-16 | 华为技术有限公司 | The coding/decoding method and device of Variable Length Code file |
CN108322708A (en) * | 2018-02-12 | 2018-07-24 | 福州大学 | Real-time video transmission system and method based on multi-channel parallel transmission technology |
CN108491261A (en) * | 2018-01-19 | 2018-09-04 | 西安电子科技大学 | Multichannel frame sequence sort method based on many-core parallel processor |
CN110381322A (en) * | 2019-07-15 | 2019-10-25 | 腾讯科技(深圳)有限公司 | Method for decoding video stream, device, terminal device and storage medium |
-
2021
- 2021-04-01 CN CN202110359720.7A patent/CN112835651B/en active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1630370A (en) * | 2003-12-15 | 2005-06-22 | 联想(北京)有限公司 | A method of coding and decoding for data compression |
CN101179715A (en) * | 2006-11-30 | 2008-05-14 | 腾讯科技(深圳)有限公司 | Method and system of implementing compressed encoding simultaneously to multipath video source |
CN1972447A (en) * | 2006-12-08 | 2007-05-30 | 清华大学 | Multi-image player based on stream media technology and its playing method |
CN102098503A (en) * | 2009-12-14 | 2011-06-15 | 中兴通讯股份有限公司 | Method and device for decoding image in parallel by multi-core processor |
CN101783946A (en) * | 2010-01-30 | 2010-07-21 | 青岛海信网络科技股份有限公司 | Video decoding method, video decoder and video monitoring system |
CN101834854A (en) * | 2010-04-06 | 2010-09-15 | 北京交通大学 | Video transmission system of mobile phone |
CN101924666A (en) * | 2010-07-22 | 2010-12-22 | 中兴通讯股份有限公司 | Decoding realization method and system of signaling tracking |
CN102270158A (en) * | 2011-08-10 | 2011-12-07 | 深圳市万兴软件有限公司 | Application program multiprocess running method and device |
CN104704828A (en) * | 2012-10-03 | 2015-06-10 | 美国博通公司 | Bounded rate near-lossless and lossless image compression |
CN104980752A (en) * | 2015-06-11 | 2015-10-14 | 武汉大千信息技术有限公司 | Method for realizing multipath self-adaptive parallel transcoding through CPU and GPU and system thereof |
CN105187117A (en) * | 2015-08-12 | 2015-12-23 | 莱诺斯科技(北京)有限公司 | Satellite telemetering decoding system |
CN107592118A (en) * | 2016-07-08 | 2018-01-16 | 华为技术有限公司 | The coding/decoding method and device of Variable Length Code file |
CN106878736A (en) * | 2017-03-17 | 2017-06-20 | 郑州云海信息技术有限公司 | A kind of method and apparatus of coding and decoding video |
CN108491261A (en) * | 2018-01-19 | 2018-09-04 | 西安电子科技大学 | Multichannel frame sequence sort method based on many-core parallel processor |
CN108322708A (en) * | 2018-02-12 | 2018-07-24 | 福州大学 | Real-time video transmission system and method based on multi-channel parallel transmission technology |
CN110381322A (en) * | 2019-07-15 | 2019-10-25 | 腾讯科技(深圳)有限公司 | Method for decoding video stream, device, terminal device and storage medium |
Non-Patent Citations (3)
Title |
---|
"Efficient key picture and single loop decoding scheme for SHVC";Krishnakanth Rapaka等;《2013 Visual Communications and Image Processing (VCIP)》;全文 * |
"一种多功能红外图像播放软件的设计实现";贾丕军等;《电子设计工程》;第185-187页 * |
"遥测文件截取器软件设计与实现";贾丕军;《现代电子技术》;第36-38页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112835651A (en) | 2021-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110442560B (en) | Log replay method, device, server and storage medium | |
McCharen et al. | Problems and experiments for and with automated theorem-proving programs | |
JP2575595B2 (en) | Image frame compression method and data processing system | |
CN1985278B (en) | Legacy processing for pixel shader hardware | |
CN104679572B (en) | Plug-in unit based on preload mechanisms supports method | |
US20120011404A1 (en) | Method and system of a processor-agnostic encoded debug-architecture in a pipelined environment | |
US4368532A (en) | Memory checking method | |
CN112835651B (en) | Multipath image parallel decoding processing method | |
KR19980081853A (en) | How to compress and restore graphic images | |
CN111858157B (en) | Missing data recovery method, system, terminal and storage medium based on erasure codes | |
CN117196000A (en) | Edge side model reasoning acceleration method for containerized deployment | |
US11489541B2 (en) | Compression techniques for data structures suitable for artificial neural networks | |
CN111797985A (en) | Convolution operation memory access optimization method based on GPU | |
CN115983337A (en) | Convolution calculation unit, AI operation array and related equipment | |
CN109144793B (en) | Fault correction device and method based on data flow driving calculation | |
CN112506651B (en) | Method and equipment for data operation in large-data-volume environment | |
CN114281297A (en) | Transmission management method, device, equipment and storage medium for multi-audio stream | |
CN107835158B (en) | Method and device for transmitting interactive data under SNA network system | |
CN114119334A (en) | Image steganography method for automatically learning embedded cost based on attention mechanism | |
US6370636B1 (en) | Accessing byte lines from dual memory blocks and aligning for variable length instruction execution | |
CN111475234A (en) | Character string transmission method and device, computer and readable storage medium | |
CN113076283B (en) | File consistency verification method and device and electronic equipment | |
CN111045831B (en) | Python-based radar real-time signal processing method | |
CN114286106B (en) | MPSoC-based multipath SDI video extremely-low-delay coding system | |
WO2024140568A1 (en) | Image processing method and apparatus, electronic device, and readable storage medium |
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 |