Large-area-array image JPEG2000 hardware compression system and method
By caching and stitching compressed image subblocks in the hardware platform in real time, the problems of slow decoding speed and black edges in the prior art are solved, and fast compression and efficient data processing of large-face array images are realized.
Patent Information
- Application Number
- CN202510401473.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-01
- Publication Date
- 2025-08-08
AI Technical Summary
The existing compression methods are slow to decoding due to the serial processing characteristics of the upper computer, which limits the efficiency of receiving data. At the same time, selecting an inappropriate image sub-block size will lead to black edge problems around the large-face array image.
By adopting non-decompression splicing processing, the compressed image subblocks are cached and spliced in real time in the hardware platform, and the data cache control unit, cache unit, image segmentation unit, video stream generation unit, image compression unit and parameter extraction unit are used to achieve rapid compression and splicing of images.
It improves the real-time performance of system data processing, realizes rapid compression of large-face array images, reduces black edges, and improves decoding speed and data processing efficiency.
Smart Images

Figure CN120455718A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a hardware compression system and method, and in particular to a large array image JPEG2000 hardware compression system and method. Background Art
[0002] High-magnification compression of large-array images has always been a contradictory issue. In order to obtain wider field of view information, large-array image detectors are needed for imaging. The amount of raw data is very large, and the limited channel bandwidth sometimes requires high-magnification compression of the raw data.
[0003] like Figure 1 As shown in FIG, an existing large array image compression method is used. In this method, a fixed segmentation ratio is set according to the current image resolution size, and the current large array image is divided into image sub-blocks of equal size. The image sub-blocks are sequentially sent to the JPEG2000 compression module for compression. The compressed code stream is returned to the host computer to decode each image sub-image to generate the original image sub-blocks, which are then cached. After all the image sub-blocks are decoded, a splicing operation is performed to restore a complete large array image.
[0004] However, due to the serial processing characteristics of the host computer, decoding speed is slow, which limits the efficiency of data reception. In addition, choosing different image sub-block sizes will result in different black border widths around the recovered large array image. Setting an inappropriate sub-image size will result in excessive black borders around the recovered image. Summary of the Invention
[0005] The purpose of the present invention is to solve the problem that the existing compression method has a slow decoding speed due to the serial processing characteristics of the host computer, thereby limiting the efficiency of receiving data, and the technical problem that selecting different image sub-block sizes will result in different black edge widths around the restored large array image, or setting an inappropriate image sub-block size will result in excessive image black edges around the restored image, and to provide a large array image JPEG2000 hardware compression system and method.
[0006] To achieve the above object, the technical solution adopted by the present invention is:
[0007] A large-area image JPEG2000 hardware compression system is characterized in that it includes a data cache control unit, a first high-speed cache unit, an image segmentation unit, a video stream generation unit, an image compression unit, and a parameter extraction unit connected in sequence; a parameter cache RAM and a second high-speed cache unit connected to the first output terminal and the second output terminal of the parameter extraction unit, respectively; a compressed data splicing unit connected to the output terminals of the parameter cache RAM and the second high-speed cache unit; and a network output unit connected to the output terminal of the compressed data splicing unit. The modules in the present invention utilize non-decompression splicing processing, caching compressed image sub-blocks in a designated area, performing real-time splicing processing within a hardware platform, and then sending the spliced image to a host computer for decoding and display, thereby effectively improving the real-time performance of the system's data processing. The details are as follows:
[0008] The input end of the data cache control unit is connected to the camera, and is used to receive the large array image of the camera, and count the number of valid pixels Pixel_Val per row of the large array image and the number of valid rows Row_Val per frame;
[0009] The first cache unit is used to cache the large area array image, the number of effective pixels per row of the large area array image, and the number of effective rows per frame;
[0010] The image segmentation unit is used to segment the large array image according to the principle of minimum black edges based on the number of effective pixels per row Pixel_Val and the number of effective rows per frame Row_Val, to obtain multiple image sub-blocks of equal size; through image segmentation, it is convenient to achieve rapid compression of the large array image.
[0011] The video generation unit is used to set a standard format video stream for a plurality of image sub-blocks of equal size and input the video stream into the image compression unit.
[0012] The image compression unit is used to perform JPEG2000 compression on each image sub-block in the standard format video stream according to a selected compression ratio to obtain multiple compressed code streams.
[0013] The parameter extraction unit is used to pre-assign addresses to each compressed code stream in the second cache unit, cache each compressed code stream according to the assigned addresses, and simultaneously count valid data values of each compressed code stream and write them sequentially into corresponding set addresses in the parameter cache RAM. The size of the compressed code stream of each image sub-block can be estimated based on the compression ratio, and a fixed-size space is allocated in the second cache unit for the compressed code stream of each image sub-block, and the starting position of the compressed code stream of each image sub-block is pre-set.
[0014] Furthermore, the compressed data splicing unit is configured to package and combine the cached compressed code streams and corresponding valid data values according to a set protocol to generate a compressed data stream that satisfies the set protocol, and input the compressed data stream to a host computer for decoding and display via a network output unit. The splicing process involves disassembling and reassembling the compressed code streams of the image sub-blocks according to the JPEG2000 compressed code stream format, and the reassembled code stream still conforms to the JPEG2000 compressed code stream format.
[0015] Furthermore, the image segmentation unit performs segmentation processing on the large array image in the following manner:
[0016] Calculate the number of vertical segmentation X and horizontal segmentation Y of the large array image. The calculation formula is:
[0017] X=((Row_Val)mod M+1)*M-Row_Val;
[0018] Y=((Pixel_Val)mod N+1)*N-Pixel_Val;
[0019] Where M and N represent the number of pixels in the vertical and horizontal directions of the image sub-block, respectively. M∈{32,64,128,32n,64n,128n}, N∈{32,64,32n,64n}, and n is an integer greater than 1. Pixel_Val represents the number of valid pixels per row, Row_Val represents the number of valid rows per frame, and mod represents the modulo operation.
[0020] The large array image is segmented according to the number X of segmentations in the vertical direction and the number Y of segmentations in the horizontal direction.
[0021] Furthermore, the image compression unit is a JPEG2000 compression module.
[0022] Furthermore, in the parameter extraction unit, the pre-allocation of addresses of the compressed code streams in the second cache unit is specifically: pre-allocating addresses of the compressed code streams in the second cache unit according to the selected compression ratio and the size of the image sub-block corresponding to the compressed code stream.
[0023] Furthermore, the setting protocol is the ISO / IEC 15444-1:2000 protocol.
[0024] Furthermore, the first cache unit and the second cache unit are both DDR3 memories, which have the characteristics of high-speed cache.
[0025] At the same time, the present invention also provides a large array image JPEG2000 hardware compression method, based on the large array image JPEG2000 hardware compression system, comprising the following steps:
[0026] Step 1: Input the large array image captured by the camera into the first cache unit for caching through the data cache control unit, and simultaneously count the number of effective pixels per row and the number of effective rows per frame of the large array image;
[0027] Step 2: The image segmentation unit segments the large array image cached in the first cache unit according to the number of valid pixels per row and the number of valid rows per frame, and in accordance with the principle of generating minimal black edges, to obtain a plurality of image sub-blocks of equal size;
[0028] Step 3: The video generation unit sets the multiple image sub-blocks of equal size into a standard format video stream and outputs it to the image compression unit;
[0029] Step 4: compress each image sub-block in the standard format video stream using JPEG2000 according to the selected compression ratio to obtain multiple compressed code streams;
[0030] Step 5: pre-assigning addresses of the compressed code streams in the second cache unit through the parameter extraction unit, caching the compressed code streams according to the assigned addresses, and simultaneously counting the valid data values of the compressed code streams and writing them to the corresponding set addresses in the parameter cache RAM;
[0031] Step 6: The compressed data splicing unit packages and combines the cached compressed code streams and the corresponding valid data values according to the set protocol to generate a compressed data stream that meets the set protocol, and inputs it to the host computer for decoding and display through the network output unit.
[0032] Furthermore, in step 2, the segmentation process of the large array image cached in the first cache unit is specifically as follows:
[0033] a. Define the number of pixels in the vertical and horizontal directions of the image sub-block as M and N respectively, M∈{32,64,128,32n,64n,128n}, N∈{32,64,32n,64n}, where n is an integer greater than 1;
[0034] b. The image segmentation unit calculates the number of vertical segmentations X and the number of horizontal segmentations Y of the image sub-block with the minimum black border based on the number of valid pixels per row and the number of valid rows per frame using the following formula:
[0035] X=((Row_Val)mod M+1)*M-Row_Val
[0036] Y=((Pixel_Val)mod N+1)*N-Pixel_Val;
[0037] Among them, Pixel_Val represents the number of valid pixels per row, Row_Val represents the number of valid rows per frame, and mod represents the modulo operation;
[0038] c. Segment the large array image according to the number X of vertical segmentations and the number Y of horizontal segmentations to obtain multiple image sub-blocks of equal size.
[0039] Furthermore, in step 5, the address of each compressed code stream pre-allocated in the second cache unit by the parameter extraction unit is specifically:
[0040] The addresses of the compressed code streams in the second cache unit are pre-allocated according to the selected compression ratio and the size of the image sub-block corresponding to the compressed code stream.
[0041] The beneficial effects of the present invention are:
[0042] (1) The present invention provides a large-area image JPEG2000 hardware compression system and method, which adopts non-decompression splicing processing, caches compressed image sub-blocks into a specified area, performs real-time splicing processing within the hardware platform, and then sends the spliced image to a host computer for decoding and display. The large-area image JPEG2000 hardware compression system and method of the present invention can effectively improve the real-time performance of system data processing.
[0043] (2) The present invention provides a large-area image JPEG2000 hardware compression system and method, which realizes the JPEG2000 fast compression processing function of large-area image by segmenting, compressing and non-decompressing splicing large-area image.
[0044] (3) The present invention provides a large array image JPEG2000 hardware compression system with a high degree of modularity, which is easy to integrate into a large processing system. The system can realize online compression processing of large array images through a single processing board. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] Figure 1 This is a flow chart of the existing large array image compression method;
[0046] Figure 2 This is a structural diagram of an embodiment of a large-array video image JPEG2000 hardware compression system of the present invention;
[0047] Figure 3 This is a schematic structural diagram of a first high-speed cache unit and a second high-speed cache unit in an embodiment of a large-array video image JPEG2000 hardware compression system of the present invention;
[0048] Figure 4 1 is a schematic diagram of the structure of the parameter cache RAM in an embodiment of the present invention.
[0049] In the figure, 1-data cache control unit; 2-first cache unit; 3-image segmentation unit; 4-video stream generation unit; 5-image compression unit; 6-parameter extraction unit; 7-parameter cache RAM; 8-second cache unit; 9-compressed data splicing unit; 10-network output unit. DETAILED DESCRIPTION
[0050] To make the purpose, advantages and features of the present invention more clear, the following is a further detailed description of a large-area video image JPEG2000 hardware compression system and method proposed by the present invention in conjunction with the accompanying drawings and specific embodiments. The advantages and features of the present invention will become more clear according to the following specific embodiments.
[0051] This embodiment is a large-area video image JPEG2000 hardware compression system, such as Figure 2 As shown, it includes a data cache control unit 1, a first cache unit 2, an image segmentation unit 3, a video stream generation unit 4, an image compression unit 5 and a parameter extraction unit 6 connected in sequence, a parameter cache RAM 7 and a second cache unit 8 connected to the first output end and the second output end of the parameter extraction unit 6 respectively, a compressed data splicing unit 9 connected to the output ends of the parameter cache RAM 7 and the second cache unit 8, and a network output unit 10 connected to the output end of the compressed data splicing unit 9.
[0052] The input end of the data cache control unit 1 is connected to the camera and can receive the large array image of the camera. The pixels of the large array image are not less than 2000×2000, and count the number of valid pixels Pixel_Val per row of the large array image and the number of valid rows Row_Val per frame.
[0053] The first cache unit 2 is a DDR3 memory with a high-speed cache feature. In this embodiment, it can cache a large area array image, the number of effective pixels per row of the large area array image, and the number of effective rows per frame.
[0054] The image segmentation unit 3 is used to segment the large array image according to the principle of minimum black edges based on the number of valid pixels per row Pixel_Val and the number of valid rows per frame Row_Val. Specifically,
[0055] Calculate the number of vertical segmentation X and horizontal segmentation Y of the large array image. The calculation formula is:
[0056] X=((Row_Val)mod M+1)*M-Row_Val;
[0057] Y=((Pixel_Val)mod N+1)*N-Pixel_Val;
[0058] Where M and N represent the number of pixels in the vertical and horizontal directions of the image sub-block, respectively. M∈{32,64,128,32n,64n,128n}, N∈{32,64,32n,64n}, and n is an integer greater than 1. Pixel_Val represents the number of valid pixels per row, Row_Val represents the number of valid rows per frame, and mod represents the modulo operation.
[0059] The large array image is segmented according to the number X of segmentations in the vertical direction and the number Y of segmentations in the horizontal direction.
[0060] By adopting the segmentation method described above in this embodiment, the obtained multiple image sub-blocks of equal size can produce the least black edges.
[0061] The video generation unit 4 is used to set a standard format video stream for a plurality of image sub-blocks of equal size and input the video stream into the image compression unit 5 .
[0062] The image compression unit 5 is a JPEG2000 compression module, which is used to perform JPEG2000 compression on each image sub-block in the standard format video stream according to a selected compression ratio to obtain multiple compressed code streams.
[0063] The parameter extraction unit 6 is used to pre-allocate addresses of the compressed code streams in the second cache unit 8 according to the selected compression ratio and the size of the image sub-block corresponding to the compressed code stream, cache the compressed code streams in the second cache unit 8 according to the allocated addresses, and simultaneously count the valid data values of the compressed code streams and write them sequentially into the corresponding set addresses in the parameter cache RAM 7. In this embodiment, the second cache unit 8 is a DDR3 memory.
[0064] The compressed data splicing unit 9 is used to package and combine the cached compressed code streams and the corresponding valid data values in accordance with the ISO / IEC 15444-1:2000 protocol, generate a compressed data stream that meets the ISO / IEC 15444-1:2000 protocol, and input it to the host computer for decoding and display through the network output unit 10.
[0065] This embodiment also provides a large array image JPEG2000 hardware compression method, comprising the following steps:
[0066] Step 1: input the large array image captured by the camera into the first cache unit 2 for caching through the data cache control unit 1, and at the same time count the number of effective pixels per row and the number of effective rows per frame of the large array image;
[0067] Step 2: The image segmentation unit 3 segments the large array image cached in the first cache unit 2 according to the number of valid pixels per row Pixel_Val and the number of valid rows per frame Row_Val, and in accordance with the principle of generating the least black edges, to obtain a plurality of image sub-blocks of equal size;
[0068] The specific process of segmenting the large array image cached in the first cache unit 2 is as follows:
[0069] Define the number of pixels of the image sub-block in the vertical direction and horizontal direction as M and N respectively, M∈{32,64,128,32n,64n,128n}, N∈{32,64,32n,64n}, where n is an integer greater than 1;
[0070] The image segmentation unit 3 calculates the number X of vertical segmentations and the number Y of horizontal segmentations of the image sub-block with the minimum black border according to the number of valid pixels per row and the number of valid rows per frame using the following formula:
[0071] X=((Row_Val)mod M+1)*M-Row_Val
[0072] Y=((Pixel_Val)mod N+1)*N-Pixel_Val;
[0073] The large array image is segmented according to the number X of segmentations in the vertical direction and the number Y of segmentations in the horizontal direction to obtain a plurality of image sub-blocks of equal size.
[0074] Step 3: The video generation unit 4 sets the multiple image sub-blocks of equal size into a standard format video stream and outputs it to the image compression unit 5;
[0075] Step 4: compress each image sub-block in the standard format video stream using JPEG2000 according to the selected compression ratio to obtain multiple compressed code streams;
[0076] Step 5: Pre-assign addresses to the compressed code streams in the second cache unit 8 based on the selected compression ratio and the size of the image sub-block corresponding to the compressed code streams. Each compressed code stream is cached according to the assigned address. At the same time, the valid data value of each compressed code stream is counted and written to the corresponding set address in the parameter cache RAM 7.
[0077] Step 6: The compressed data splicing unit 9 packages and combines the cached compressed code streams and the corresponding valid data values according to the set protocol, namely the ISO / IEC 15444-1:2000 protocol, to generate a compressed data stream that meets the set protocol, and inputs it to the host computer for decoding and display through the network output unit 10.
[0078] For ease of description, this embodiment uses a camera outputting a large area array image of 8956×6708 and performing JPEG2000 compression as an example.
[0079] First, calculate whether the vertical segmentation can be completed into multiple equally sized sub-images: 8956 / 32 = 279.875. Based on this calculation, we determine the need for vertical padding to ensure complete segmentation. If 32 is selected, then 280 × 32 - 8956 = 4 pixels need to be padded. Because 280 is an even number of blocks, consider merging the image sub-blocks into 256, resulting in a vertical decomposition of 35 blocks.
[0080] Similarly, the horizontal direction can be divided into 210 sub-images with a width of 32 pixels, or it can be merged into 105 image sub-blocks with a width of 64 pixels. At this time, the number of pixels that need to be filled is 12 pixels, that is, when the large array image of 8956×6708 is decomposed into 256×64, the number of pixels that need to be filled is the least, which is 12 pixels in the horizontal direction and 4 pixels in the vertical direction. At this time, the number of image blocks is the least, which is 35×105=3675 image sub-blocks.
[0081] After determining the required segmentation size, the 8956×6708 large-area image was segmented and generated into video-like image sub-blocks, with a compression ratio set to 20x. The segmented image sub-blocks were combined into a standard-format video stream and fed into the JPEG2000 compression module for JPEG2000 compression, resulting in a compressed code stream of 3675 image sub-blocks.
[0082] After compression, the size of the compressed code stream of each image sub-block is about 860B. A 1KB cache space is allocated in the second cache unit 8 for the compressed code stream of the image sub-block. The storage address of the compressed code stream of the image sub-block is fixed. The structure of the second cache unit 8 is as follows: Figure 3 At the same time, the effective data values of the compressed code stream of the image sub-block are sequentially put into the parameter cache RAM7 for caching. The structure of the parameter cache RAM7 is as follows: Figure 4 As shown, it prepares for later splicing without decoding.
[0083] The compressed code stream format of each image sub-block is shown in Table 1. Each image sub-block has a similar common part, mainly including the flag codes FF4F, FF51, FF52, FF5C, FF90, FF93, FFD9 and the corresponding valid data values.
[0084] In order to be able to splice the compressed code streams of multiple image sub-blocks into a large-area compressed image, it is necessary to adjust the effective data values in them to obtain parameters that can express the large-area image. The adjustment is based on the ISO / IEC 15444-1:2000 protocol.
[0085] Table 1
[0086]
[0087] The parts that need to be adjusted in this embodiment are shown in Table 2, including changing the horizontal and vertical sizes of the image in SIZ in the SIZ data segment, changing the size of the image sub-block to the size of the large area array image after filling, changing the block index and data amount identifier in SOT in the QCD data segment, and then reading out the compressed code stream of each image sub-block from SOT to the total compressed data amount in sequence, transmitting it to the host computer through the network output unit 10, and obtaining a large area array compressed image data stream that complies with the ISO / IEC 15444-1:2000 protocol.
[0088] According to the above process, it can be seen that in this embodiment, the JPEG2000 fast compression processing function of large-area array images is realized by segmenting, compressing and non-decompressing splicing of large-area array images within the embedded hardware platform, caching the compressed image sub-blocks into a specified area, and splicing them in real time within the embedded hardware platform. The spliced image is then sent to the host computer for decoding and display, thereby improving the real-time performance of the system data processing.
[0089] In this embodiment, the non-decompression splicing processing technology is used. During decoding, only one image needs to be decoded. There is no need to decode multiple image sub-blocks and splice code streams on the host computer, which can improve the decoding speed.
[0090] Table 2
[0091]
[0092] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit the present application. Although the present application has been described in detail with reference to the aforementioned embodiments, a person of ordinary skill in the art should understand that the technical solutions described in the aforementioned embodiments can still be modified, or some or all of the technical features therein can be replaced by equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the present application.
Claims
1. A JPEG2000 hardware compression system for large array images, characterized by: The system comprises a data cache control unit (1), a first high-speed cache unit (2), an image segmentation unit (3), a video stream generation unit (4), an image compression unit (5), and a parameter extraction unit (6) connected in sequence; a parameter cache RAM (7) and a second high-speed cache unit (8) respectively connected to a first output end and a second output end of the parameter extraction unit (6); a compressed data splicing unit (9) connected to the output ends of the parameter cache RAM (7) and the second high-speed cache unit (8); and a network output unit (10) connected to the output end of the compressed data splicing unit (9); The input end of the data cache control unit (1) is connected to a camera, and is used for receiving a large array image from the camera, and counting the number of effective pixels per line and the number of effective lines per frame of the large array image; The first cache unit (2) is used to cache the large array image and the number of effective pixels per row and the number of effective rows per frame of the large array image; The image segmentation unit (3) is used to segment the large array image according to the number of effective pixels per line and the number of effective lines per frame, and to obtain a plurality of image sub-blocks of equal size according to the principle of minimum black edges. The video generation unit (4) is used to set a standard format video stream for a plurality of image sub-blocks of equal size and input the stream into the image compression unit (5); The image compression unit (5) is used to perform JPEG2000 compression on each image sub-block in the standard format video stream according to a selected compression ratio to obtain multiple compressed code streams; The parameter extraction unit (6) is used to pre-allocate the addresses of the compressed code streams in the second cache unit (8), cache the compressed code streams according to the allocated addresses, and simultaneously count the valid data values of the compressed code streams and write them into the corresponding set addresses in the parameter cache RAM (7) in sequence; The compressed data splicing unit (9) is used to package and combine the cached compressed code streams and corresponding valid data values according to the set protocol to generate a compressed data stream that meets the set protocol, and input it to the host computer for decoding and display through the network output unit (10).
2. The large-area image JPEG2000 hardware compression system according to claim 1, characterized in that: The image segmentation unit (3) performs segmentation processing on the large array image in the following manner: Calculate the number of vertical segmentation X and horizontal segmentation Y of the large array image. The calculation formula is: X=((Row_Val)mod M+1)*M-Row_Val; Y=((Pixel_Val)mod N+1)*N-Pixel_Val; Where M and N represent the number of pixels in the vertical and horizontal directions of the image sub-block, respectively. M∈{32,64,128,32n,64n,128n}, N∈{32,64,32n,64n}, and n is an integer greater than 1. Pixel_Val represents the number of valid pixels per row, Row_Val represents the number of valid rows per frame, and mod represents the modulo operation. The large array image is segmented according to the number X of segmentations in the vertical direction and the number Y of segmentations in the horizontal direction.
3. The large-area image JPEG2000 hardware compression system according to claim 1, characterized in that: The image compression unit (5) is a JPEG2000 compression module.
4. The large-area image JPEG2000 hardware compression system according to claim 1, characterized in that: The parameter extraction unit (6) pre-allocates the addresses of the compressed code streams in the second cache unit (8) according to the selected compression ratio and the size of the image sub-block corresponding to the compressed code stream.
5. The large-area image JPEG2000 hardware compression system according to claim 1, characterized in that: The setting protocol is the ISO / IEC 15444-1:2000 protocol.
6. The large-area image JPEG2000 hardware compression system according to claim 6, characterized in that: The first cache unit (2) and the second cache unit (8) are both DDR3 memories.
7. A JPEG2000 hardware compression method for large array images, characterized in that: The large array image JPEG2000 hardware compression system according to any one of claims 1 to 6 comprises the following steps: Step 1: inputting the large array image captured by the camera into the first high-speed cache unit (2) for caching via the data cache control unit (1), and simultaneously counting the number of effective pixels per line and the number of effective lines per frame of the large array image; Step 2: The image segmentation unit (3) segments the large array image cached in the first cache unit (2) according to the number of effective pixels per row and the number of effective rows per frame, and in accordance with the principle of generating the least black edges, to obtain a plurality of image sub-blocks of equal size; Step 3: The video generation unit (4) sets the plurality of image sub-blocks of equal size into a standard format video stream and outputs the stream to the image compression unit (5); Step 4: compress each image sub-block in the standard format video stream using JPEG2000 according to the selected compression ratio to obtain multiple compressed code streams; Step 5: pre-assigning addresses of the compressed code streams in the second cache unit (8) through the parameter extraction unit (6), caching the compressed code streams according to the assigned addresses, and simultaneously counting the valid data values of the compressed code streams and writing them into the corresponding set addresses in the parameter cache RAM (7); Step 6: The compressed data splicing unit (9) packages and combines the cached compressed code streams and the corresponding valid data values according to the set protocol to generate a compressed data stream that meets the set protocol, and inputs it to the host computer for decoding and display through the network output unit (10).
8. The JPEG2000 hardware compression method for large area array images according to claim 7, characterized in that: In step 2, the segmentation process of the large array image cached in the first cache unit (2) is specifically as follows: a. Define the number of pixels in the vertical and horizontal directions of the image sub-block as M and N respectively, M∈{32,64,128,32n,64n,128n}, N∈{32,64,32n,64n}, where n is an integer greater than 1; b. The image segmentation unit (3) calculates the number of vertical segmentations X and the number of horizontal segmentations Y of the image sub-blocks with the minimum black border according to the number of valid pixels per row and the number of valid rows per frame using the following formula: X=((Row_Val)mod M+1)*M-Row_Val; Y=((Pixel_Val)mod N+1)*N-Pixel_Val; Among them, Pixel_Val represents the number of valid pixels per row, Row_Val represents the number of valid rows per frame, and mod represents the modulo operation; c. Segment the large array image according to the number X of vertical segmentations and the number Y of horizontal segmentations to obtain multiple image sub-blocks of equal size.
9. The JPEG2000 hardware compression method for large area array images according to claim 7, characterized in that: In step 5, the addresses of the compressed code streams pre-allocated in the second cache unit (8) by the parameter extraction unit (6) are specifically: The addresses of the compressed code streams in the second cache unit (8) are pre-allocated according to the selected compression ratio and the size of the image sub-block corresponding to the compressed code stream.