US20120057629A1 - Rho-domain Metrics - Google Patents
Rho-domain Metrics Download PDFInfo
- Publication number
- US20120057629A1 US20120057629A1 US13/225,222 US201113225222A US2012057629A1 US 20120057629 A1 US20120057629 A1 US 20120057629A1 US 201113225222 A US201113225222 A US 201113225222A US 2012057629 A1 US2012057629 A1 US 2012057629A1
- Authority
- US
- United States
- Prior art keywords
- video
- deviation metric
- video encoding
- zero coefficients
- bit rate
- 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.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/164—Feedback from the receiver or from the transmission channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
- H04N19/198—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including smoothing of a sequence of encoding parameters, e.g. by averaging, by choice of the maximum, minimum or median value
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
- H04N5/145—Movement estimation
Definitions
- FIG. 1 illustrates an example of a frame illustrating presence of non-zero coefficients (NZ) in macroblocks.
- FIG. 2 is a chart showing an example of an exponential relationship of NZ( ⁇ ) and quantization parameters.
- FIG. 3 is a chart showing a ⁇ -domain deviation metric ⁇ as a recursive weighted difference between the theoretical and actual values.
- FIG. 4 is a simplified block diagram showing a video generation system.
- FIG. 5 is a chart illustrating the linear relationship between video quality quantization parameter.
- FIG. 6 is a flowchart illustrating a process for mode decision algorithm video encoding according to certain aspects of the invention.
- FIG. 7 is a simplified block schematic illustrating a processing system employed in certain embodiments of the invention.
- ⁇ -domain metric “ ⁇ ” and systems and methods that apply the metric.
- the definition of ⁇ in ⁇ -domain can be taken to be the number non-zero coefficients after transform and quantization in a video encoding process.
- NZ will be used herein to represent ⁇ , where NZ can be understood as meaning a number of non-zero coefficients after quantization of each 16 ⁇ 16 pixel macroblock (“MB”) in video standards such as the H.264 video standard.
- NZ calculation is shown in FIG. 1 . It has been shown through theory and experiment that ⁇ has a linear relationship with the video textual encoding bit rate. Generally, proposed ⁇ -domain source models and models consider the bit rate R as a function of ⁇ which is the percentage of zeros among the quantized coefficients. Observations show that ⁇ monotonically increases with quantization step-size QP, which implies there is a one-to-one mapping between them. Accordingly, certain embodiments provide a frame-level rate control algorithm based on these properties. Some embodiments can employ any of a plurality of suitable algorithms that may improve the accurate estimation of the R- ⁇ function.
- the relationship of NZ( ⁇ ) and QP can be modeled by exponential equations, as illustrated in FIG. 2 .
- the dotted curve 22 represents actual frame-level NZ vs. QP points from encoding, while the solid curve 23 represents exponential function modeling.
- a table of NZ vs. QP can be obtained from the exponential model.
- a ⁇ -domain deviation metric ⁇ may be defined as a recursive weighted ratio of the theoretical NZ_QP curve and the actual NZ_QP curve, as illustrated in FIG. 3 .
- One curve 33 represents the theoretical NZ_QP curve and a second curve 32 represent an actual NZ vs. QP curve measured during encoding.
- One difference between curves 32 and 33 may be denoted as deviation metric ⁇ .
- Deviation metric ⁇ can be employed in video encoding to determine the motion complexity of a video sequence, to determine the encoded video quality, to determine short scene cut, and to determine the actual QP used to best meet the predefined bit rate budget.
- FIG. 4 Interoperation and interaction of elements in one example of a video generation system utilizing ⁇ -domain deviation metric ⁇ and its applications is depicted in FIG. 4 .
- the combination of hardware and software employed is typically determined according to requirements of the application and the configuration shown in FIG. 4 is provided for the sole purpose of simplifying description.
- a video encoder 400 typically generates a number of non-zero coefficient (NZ) per MB and/or per frame as a byproduct of its video encoding process.
- the NZ information is processed and ⁇ -domain deviation metric ⁇ is calculated as meta-data 402 to feed into various algorithms of interest.
- ⁇ can be used to categorize video motion complexity.
- a mode decision system 404 may employ ⁇ -domain metric ⁇ to obtain an optimized decision process.
- Deviation ⁇ can be defined as the weighted difference of a theoretical NZ_QP curve from an actual curve obtained from encoding process. Normalized ⁇ fluctuates around a value of 1.0. A value of ⁇ that is smaller than 1 indicates that the actual encoded bit rate is larger than expected, implying that a more complicated motion contextual content has been encountered. A value of ⁇ that is larger than 1.0 indicates that fewer non-zero coefficients are encoded, implying that smoother motion content has been encountered.
- ⁇ can be used to calculate encoded video quality curve Lq (see FIG. 5 ).
- Encoded video quality Q has a linear relationship with the quantization parameter QP used in an encoding process such as that shown in FIG. 4 .
- a linear model Q_QP can be obtained from experimental data.
- Q_QP linear model can be adjusted based on the deviation ⁇ : i.e., the quality and QP relationship is a function of motion complexity of the video content to be encoded.
- the adjusted Q_QP model can serve as the target quality curve of the video content. If a target quality is set, then actual QP becomes a function of deviation ⁇ , and a table of QP and ⁇ can be derived.
- a target quality video encoding algorithm can be achieved using a simple table lookup operation.
- ⁇ can be used to determine changes in video scene. It can be shown experimentally that the number of non-zero coefficients (NZ) increases multiple times in a scene change P-frame due to a lack of temporary correlation between the scene change frame and its reference frame. Therefore, certain embodiments utilize deviation ⁇ to determine scene change with a good degree of robustness and very low computational complexity.
- NZ_QP curve can be adjusted to reflect a more accurate encoding bit rate for a given video sequence. Therefore, a more accurate rate control encoding can be achieved using deviation metric ⁇ .
- Certain embodiments employ efficient and accurate constant bit rate control methods and algorithms 406 based on deviation ⁇ features described above in relation to video scene changes and by combining ⁇ and the NZ_QP curve.
- a group of pictures (“GOP”) may be defined as a group of pictures starting from an intra-coded frame (“I-frame”), and its following inter-predicted frames (“P/B-frames”).
- a target bit budget may be assigned to each I or P/B frame in accordance with a target bit rate per GOP.
- An adjusted NZ_QP table based on the recursively weighted deviation ⁇ can reflect a more accurate content based NZ_QP relationship.
- a predicted NZ value may be adaptively estimated for a current frame to be encoded, and a quantization parameter QP can be calculated from the NZ_QP curve to control the bit rate for the current frame. If deviation ⁇ changes abruptly above a threshold level, a scene change detection may be indicated and the rate control algorithm can be reset.
- a cost efficient and robust constant bit rate algorithm can be designed and implemented through the use of deviation ⁇ .
- each frame may be assigned and encoded with the same bit rate, resulting in temporary differences in video quality.
- Human visual system theory suggests that human vision is sensitive to change in motion (temporal direction) and textural complexity (spatial video content).
- a quality bound variable bit rate algorithm 408 FIG. 4
- algorithms and methods for categorizing video motion complexity can be used to categorize motion/textual changing frames.
- Q_QP tables and tables of QP and ⁇ can be used to bind the smooth and textural simple frames with a predefined minimum quality.
- Deviation ⁇ features described above in relation to video scene changes and combining ⁇ and NZ_QP curve can be used to control encoded bit to a target bit rate.
- a network adaptive variable frame rate algorithm 410 ( FIG. 4 ) can be designed using rho-domain metric ⁇ . With reference to FIG. 6 , certain of the systems and methods described herein may be employed to obtain a suitable variable frame rate algorithm.
- the network provides feedback information comprising user defined minimum video quality, video channel priority and network bandwidth availability.
- a quantization parameter QP is calculated based on the deviation ⁇ and its corresponding rate control implementation.
- video motion complexity can be categorized, and a new quantization parameter QP_ 1 with respect to the minimum quality requirement may be calculated.
- the quantization parameter difference (“Diff_QP”) between QP and QP_ 1 is calculated.
- a new frame rate to be encoded can be obtained based on Diff_QP and the content of a precalculated Diff_QP v. frame rate table. In certain embodiments, a high priority channel's frame rate is maintained unchanged as far as possible. If a larger Diff_QP is encountered, a downsizing of encoding picture resolutions can be recommended and/or performed. Downsizing of picture resolutions can include, for example, downsizing from full-size D1 resolution to common intermediate format CIF resolution.
- computing system 70 may be a commercially available system that executes commercially available operating systems such as Microsoft Windows®, UNIX or a variant thereof, Linux, a real time operating system and or a proprietary operating system.
- the architecture of the computing system may be adapted, configured and/or designed for integration in the processing system, for embedding in one or more of an image capture system, communications device and/or graphics processing systems.
- computing system 70 comprises a bus 702 and/or other mechanisms for communicating between processors, whether those processors are integral to the computing system 70 (e.g.
- processor 704 , 705 comprises a CISC or RISC computing processor and/or one or more digital signal processors.
- processor 704 and/or 705 may be embodied in a custom device and/or may perform as a configurable sequencer.
- Device drivers 703 may provide output signals used to control internal and external components and to communicate between processors 704 and 705 .
- Computing system 70 also typically comprises memory 706 that may include one or more of random access memory (“RAM”), static memory, cache, flash memory and any other suitable type of storage device that can be coupled to bus 702 .
- Memory 706 can be used for storing instructions and data that can cause one or more of processors 704 and 705 to perform a desired process.
- Main memory 706 may be used for storing transient and/or temporary data such as variables and intermediate information generated and/or used during execution of the instructions by processor 704 or 705 .
- Computing system 70 also typically comprises non-volatile storage such as read only memory (“ROM”) 708 , flash memory, memory cards or the like; non-volatile storage may be connected to the bus 702 , but may equally be connected using a high-speed universal serial bus (USB), Firewire or other such bus that is coupled to bus 702 .
- Non-volatile storage can be used for storing configuration, and other information, including instructions executed by processors 704 and/or 705 .
- Non-volatile storage may also include mass storage device 710 , such as a magnetic disk, optical disk, flash disk that may be directly or indirectly coupled to bus 702 and used for storing instructions to be executed by processors 704 and/or 705 , as well as other information.
- computing system 70 may be communicatively coupled to a display system 712 , such as an LCD flat panel display, including touch panel displays, electroluminescent display, plasma display, cathode ray tube or other display device that can be configured and adapted to receive and display information to a user of computing system 70 .
- a display system 712 such as an LCD flat panel display, including touch panel displays, electroluminescent display, plasma display, cathode ray tube or other display device that can be configured and adapted to receive and display information to a user of computing system 70 .
- device drivers 703 can include a display driver, graphics adapter and/or other modules that maintain a digital representation of a display and convert the digital representation to a signal for driving a display system 712 .
- Display system 712 may also include logic and software to generate a display from a signal provided by system 700 . In that regard, display 712 may be provided as a remote terminal or in a session on a different computing system 70 .
- An input device 714 is generally provided locally or through a remote system and typically provides for alphanumeric input as well as cursor control 716 input, such as a mouse, a trackball, etc. It will be appreciated that input and output can be provided to a wireless device such as a PDA, a tablet computer or other system suitable equipped to display the images and provide user input.
- a wireless device such as a PDA, a tablet computer or other system suitable equipped to display the images and provide user input.
- computing system 70 may be embedded in a system that captures and/or processes images, including video images.
- computing system may include a video processor or accelerator 717 , which may have its own processor, non-transitory storage and input/output interfaces.
- video processor or accelerator 717 may be implemented as a combination of hardware and software operated by the one or more processors 704 , 705 .
- computing system 70 functions as a video encoder, although other functions may be performed by computing system 70 .
- a video encoder that comprises computing system 70 may be embedded in another device such as a camera, a communications device, a mixing panel, a monitor, a computer peripheral, and so on.
- portions of the described invention may be performed by computing system 70 .
- Processor 704 executes one or more sequences of instructions. For example, such instructions may be stored in main memory 706 , having been received from a computer-readable medium such as storage device 710 . Execution of the sequences of instructions contained in main memory 706 causes processor 704 to perform process steps according to certain aspects of the invention.
- functionality may be provided by embedded computing systems that perform specific functions wherein the embedded systems employ a customized combination of hardware and software to perform a set of predefined tasks.
- embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
- Non-volatile storage may be embodied on media such as optical or magnetic disks, including DVD, CD-ROM and BluRay. Storage may be provided locally and in physical proximity to processors 704 and 705 or remotely, typically by use of network connection. Non-volatile storage may be removable from computing system 704 , as in the example of BluRay, DVD or CD storage or memory cards or sticks that can be easily connected or disconnected from a computer using a standard interface, including USB, etc.
- computer-readable media can include floppy disks, flexible disks, hard disks, magnetic tape, any other magnetic medium, CD-ROMs, DVDs, BluRay, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH/EEPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
- Transmission media can be used to connect elements of the processing system and/or components of computing system 70 .
- Such media can include twisted pair wiring, coaxial cables, copper wire and fiber optics.
- Transmission media can also include wireless media such as radio, acoustic and light waves. In particular radio frequency (RF), fiber optic and infrared (IR) data communications may be used.
- RF radio frequency
- IR infrared
- Various forms of computer readable media may participate in providing instructions and data for execution by processor 704 and/or 705 .
- the instructions may initially be retrieved from a magnetic disk of a remote computer and transmitted over a network or modem to computing system 70 .
- the instructions may optionally be stored in a different storage or a different part of storage prior to or during execution.
- Computing system 70 may include a communication interface 718 that provides two-way data communication over a network 720 that can include a local network 722 , a wide area network or some combination of the two.
- a network 720 can include a local network 722 , a wide area network or some combination of the two.
- ISDN integrated services digital network
- LAN local area network
- Network link 720 typically provides data communication through one or more networks to other data devices.
- network link 720 may provide a connection through local network 722 to a host computer 724 or to a wide are network such as the Internet 728 .
- Local network 722 and Internet 728 may both use electrical, electromagnetic or optical signals that carry digital data streams.
- Computing system 70 can use one or more networks to send messages and data, including program code and other information.
- a server 730 might transmit a requested code for an application program through Internet 728 and may receive in response a downloaded application that provides or augments functional modules such as those described in the examples above.
- the received code may be executed by processor 704 and/or 705 .
- Certain embodiments of the invention provide video encoders, systems and methods for characterizing video encoding processes. Some of these embodiments comprise maintaining information relating a plurality of non-zero coefficients expected from quantization of a macroblock to one or more quantization parameters used in a video encoding process. Some of these embodiments comprise generating actual non-zero coefficients during video encoding of the macroblock. Some of these embodiments comprise calculating a deviation metric representing a weighted difference between the actual non-zero coefficients and the expected non-zero coefficients. Some of these embodiments comprise adjusting the video encoding process using the deviation metric. In some of these embodiments, the video encoding process is adjusted to obtain an optimized encoding bit rate for a desired video encoding quality.
- adjusting the video encoding process using the deviation metric includes adjusting the quantizing parameter based on a normalized value of the deviation metric.
- the relationship between video encoding quality and the quantizing parameter is a function of motion complexity of a sequence of video frames to be encoded.
- the normalized deviation metric value varies around a value of 1.0.
- a normalized deviation metric value greater than 1.0 is indicative of a larger than expected encoded bit rate.
- an increase in the normalized deviation metric value is indicative of am increase in complexity of motion contextual content.
- the quantizing parameter is a function of the deviation metric.
- adjusting the video encoding process using the deviation metric includes selecting a quantizing parameter using the deviation metric to index a table.
- Some of these embodiments comprise the step of selecting an encoding mode using the deviation metric. In some of these embodiments, the encoding mode is selected to maintain a constant bit rate for frame encoding. Some of these embodiments comprise the step of allocating bits to frames based on temporal and spatial changes between a sequence of frames. In some of these embodiments, the bits are allocated to maintain a target minimum video quality.
- Certain embodiments of the invention provide a video encoder and related methods. Some of these embodiments comprise a storage configured to maintain information relating a plurality of non-zero coefficients expected from quantization of a macroblock to one or more quantization parameters used in a video encoding process. Some of these embodiments comprise an encoder configured to receive a sequence of video frames and to encode macroblocks within the video frames. In some of these embodiments, the encoder generates actual non-zero coefficients during video encoding of the macroblocks. Some of these embodiments comprise a table of quantization parameters controlled by the encoder.
- the encoder selects a quantization parameter for a current macroblock using deviation metric representing a weighted difference between the actual non-zero coefficients and the expected non-zero coefficients.
- the video encoding process is adjusted to obtain an optimized encoding bit rate for a desired video encoding quality.
- the quantizing parameter is selected using a normalized value of the deviation metric. In some of these embodiments, the quantizing parameter is selected to achieve a target video encoding quality. In some of these embodiments, video encoding quality and quantizing parameters are related by a function of motion complexity of the sequence of video frames. In some of these embodiments, the method is performed by a processor in a video encoder that is configured to execute one or more computer program modules.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Video encoders, systems and methods are described that characterize video encoding processes using a ρ-domain deviation metric. The deviation metric represents a weighted difference between actual non-zero coefficients and the expected non-zero coefficients, the actual and expected coefficients corresponding to quantization of a macroblock in a video frame during video encoding of the frame. The deviation metric is used to adjust the video encoding process to obtain an optimized encoding bit rate for a desired video encoding quality by selecting a quantizing parameter based on a normalized value of the deviation metric. The quantizing parameter can be selected from a table indexed using the deviation metric.
Description
- The present application claims priority from PCT/CN2010/076564 (title: “Rho-Domain Metrics”) which was filed in the Chinese Receiving Office on Sep. 2, 2010, from PCT/CN2010/076569 (title: “Video Classification Systems and Methods”) which was filed in the Chinese Receiving Office on Sep. 2, 2010, from PCT/CN2010/076555 (title: “Video Analytics for Security Systems and Methods”) which was filed in the Chinese Receiving Office on Sep. 2, 2010, and from PCT/CN2010/076567 (title: “Systems And Methods for Video Content Analysis) which was filed in the Chinese Receiving Office on Sep. 2, 2010, each of these applications being hereby incorporated herein by reference. The present application is also related to concurrently filed U.S. patent non-provisional applications entitled “Video Classification Systems and Methods” (attorney docket no. 043497-0393274), “Video Analytics for Security Systems and Methods” (attorney docket no. 043497-0393277) and “Systems And Methods for Video Content Analysis” (attorney docket no. 043497-0393278), which are expressly incorporated by reference herein.
-
FIG. 1 illustrates an example of a frame illustrating presence of non-zero coefficients (NZ) in macroblocks. -
FIG. 2 is a chart showing an example of an exponential relationship of NZ(ρ) and quantization parameters. -
FIG. 3 is a chart showing a ρ-domain deviation metric θ as a recursive weighted difference between the theoretical and actual values. -
FIG. 4 is a simplified block diagram showing a video generation system. -
FIG. 5 is a chart illustrating the linear relationship between video quality quantization parameter. -
FIG. 6 is a flowchart illustrating a process for mode decision algorithm video encoding according to certain aspects of the invention. -
FIG. 7 is a simplified block schematic illustrating a processing system employed in certain embodiments of the invention. - Embodiments of the present invention will now be described in detail with reference to the drawings, which are provided as illustrative examples so as to enable those skilled in the art to practice the invention. Notably, the figures and examples below are not meant to limit the scope of the present invention to a single embodiment, but other embodiments are possible by way of interchange of some or all of the described or illustrated elements. Wherever convenient, the same reference numbers will be used throughout the drawings to refer to same or like parts. Where certain elements of these embodiments can be partially or fully implemented using known components, only those portions of such known components that are necessary for an understanding of the disclosed embodiments will be described, and detailed descriptions of other portions of such known components will be omitted so as not to obscure the disclosed embodiments. In the present specification, an embodiment showing a singular component should not be considered limiting; rather, the invention is intended to encompass other embodiments including a plurality of the same component, and vice-versa, unless explicitly stated otherwise herein. Moreover, applicants do not intend for any term in the specification or claims to be ascribed an uncommon or special meaning unless explicitly set forth as such. Further, certain embodiments of the present invention encompass present and future known equivalents to the components referred to herein by way of illustration.
- Certain embodiments of the invention provide an innovative ρ-domain metric “θ” and systems and methods that apply the metric. In some embodiments, the definition of ρ in ρ-domain can be taken to be the number non-zero coefficients after transform and quantization in a video encoding process. Additionally, the term “NZ” will be used herein to represent ρ, where NZ can be understood as meaning a number of non-zero coefficients after quantization of each 16×16 pixel macroblock (“MB”) in video standards such as the H.264 video standard.
- An example illustrating NZ calculation is shown in
FIG. 1 . It has been shown through theory and experiment that ρ has a linear relationship with the video textual encoding bit rate. Generally, proposed ρ-domain source models and models consider the bit rate R as a function of ρ which is the percentage of zeros among the quantized coefficients. Observations show that ρ monotonically increases with quantization step-size QP, which implies there is a one-to-one mapping between them. Accordingly, certain embodiments provide a frame-level rate control algorithm based on these properties. Some embodiments can employ any of a plurality of suitable algorithms that may improve the accurate estimation of the R-ρ function. The relationship of NZ(ρ) and QP can be modeled by exponential equations, as illustrated inFIG. 2 . Thedotted curve 22 represents actual frame-level NZ vs. QP points from encoding, while thesolid curve 23 represents exponential function modeling. A table of NZ vs. QP can be obtained from the exponential model. - In certain embodiments, a ρ-domain deviation metric θ may be defined as a recursive weighted ratio of the theoretical NZ_QP curve and the actual NZ_QP curve, as illustrated in
FIG. 3 . Onecurve 33 represents the theoretical NZ_QP curve and asecond curve 32 represent an actual NZ vs. QP curve measured during encoding. One difference betweencurves - Interoperation and interaction of elements in one example of a video generation system utilizing ρ-domain deviation metric θ and its applications is depicted in
FIG. 4 . The combination of hardware and software employed is typically determined according to requirements of the application and the configuration shown inFIG. 4 is provided for the sole purpose of simplifying description. Avideo encoder 400 typically generates a number of non-zero coefficient (NZ) per MB and/or per frame as a byproduct of its video encoding process. The NZ information is processed and ρ-domain deviation metric θ is calculated as meta-data 402 to feed into various algorithms of interest. - In certain embodiments, various features can be associated with ρ-domain deviation metric θ and certain advantages can be derived from these features. Moreover, hardware, software and individual algorithms can be optimized to maximize the derived advantages. In certain embodiments, θ can be used to categorize video motion complexity. A
mode decision system 404 may employ ρ-domain metric θ to obtain an optimized decision process. Deviation θ can be defined as the weighted difference of a theoretical NZ_QP curve from an actual curve obtained from encoding process. Normalized θ fluctuates around a value of 1.0. A value of θ that is smaller than 1 indicates that the actual encoded bit rate is larger than expected, implying that a more complicated motion contextual content has been encountered. A value of θ that is larger than 1.0 indicates that fewer non-zero coefficients are encoded, implying that smoother motion content has been encountered. - In some embodiments, θ can be used to calculate encoded video quality curve Lq (see
FIG. 5 ). Encoded video quality Q has a linear relationship with the quantization parameter QP used in an encoding process such as that shown inFIG. 4 . A linear model Q_QP can be obtained from experimental data. Q_QP linear model can be adjusted based on the deviation θ: i.e., the quality and QP relationship is a function of motion complexity of the video content to be encoded. The adjusted Q_QP model can serve as the target quality curve of the video content. If a target quality is set, then actual QP becomes a function of deviation θ, and a table of QP and θ can be derived. A target quality video encoding algorithm can be achieved using a simple table lookup operation. - In certain embodiments, θ can be used to determine changes in video scene. It can be shown experimentally that the number of non-zero coefficients (NZ) increases multiple times in a scene change P-frame due to a lack of temporary correlation between the scene change frame and its reference frame. Therefore, certain embodiments utilize deviation θ to determine scene change with a good degree of robustness and very low computational complexity.
- Certain embodiments combine θ and NZ_QP curve to obtain a more accurate bit rate. NZ_QP curve can be adjusted to reflect a more accurate encoding bit rate for a given video sequence. Therefore, a more accurate rate control encoding can be achieved using deviation metric θ.
- Certain embodiments employ efficient and accurate constant bit rate control methods and
algorithms 406 based on deviation θ features described above in relation to video scene changes and by combining θ and the NZ_QP curve. For the purposes of description, a group of pictures (“GOP”) may be defined as a group of pictures starting from an intra-coded frame (“I-frame”), and its following inter-predicted frames (“P/B-frames”). A target bit budget may be assigned to each I or P/B frame in accordance with a target bit rate per GOP. An adjusted NZ_QP table based on the recursively weighted deviation θ can reflect a more accurate content based NZ_QP relationship. A predicted NZ value may be adaptively estimated for a current frame to be encoded, and a quantization parameter QP can be calculated from the NZ_QP curve to control the bit rate for the current frame. If deviation θ changes abruptly above a threshold level, a scene change detection may be indicated and the rate control algorithm can be reset. A cost efficient and robust constant bit rate algorithm can be designed and implemented through the use of deviation θ. - In certain embodiments, where constant bit rate algorithm is used with video motion where there is varying complexity, each frame may be assigned and encoded with the same bit rate, resulting in temporary differences in video quality. Human visual system theory suggests that human vision is sensitive to change in motion (temporal direction) and textural complexity (spatial video content). Accordingly, a quality bound variable bit rate algorithm 408 (
FIG. 4 ) can be provided by allocating more bits to video frames that are subject to temporal and spatial changes, and by allocating fewer bits to smooth motion and textually simple video frames, while still maintaining a target minimum video quality (quality bound) by utilizing the metric θ. As described above, algorithms and methods for categorizing video motion complexity can be used to categorize motion/textual changing frames. As further described above Q_QP tables and tables of QP and θ can be used to bind the smooth and textural simple frames with a predefined minimum quality. Deviation θ features described above in relation to video scene changes and combining θ and NZ_QP curve can be used to control encoded bit to a target bit rate. - Network fluctuation can severely affect a user's quality of perception (“QOP”) when playing back network transmitted video streams. To accommodate network fluctuation, a network adaptive variable frame rate algorithm 410 (
FIG. 4 ) can be designed using rho-domain metric θ. With reference toFIG. 6 , certain of the systems and methods described herein may be employed to obtain a suitable variable frame rate algorithm. Atstep 600, the network provides feedback information comprising user defined minimum video quality, video channel priority and network bandwidth availability. Atstep 602, a quantization parameter QP is calculated based on the deviation θ and its corresponding rate control implementation. Atstep 604, and based on deviation θ, video motion complexity can be categorized, and a new quantization parameter QP_1 with respect to the minimum quality requirement may be calculated. Atstep 606, the quantization parameter difference (“Diff_QP”) between QP and QP_1 is calculated. A new frame rate to be encoded can be obtained based on Diff_QP and the content of a precalculated Diff_QP v. frame rate table. In certain embodiments, a high priority channel's frame rate is maintained unchanged as far as possible. If a larger Diff_QP is encountered, a downsizing of encoding picture resolutions can be recommended and/or performed. Downsizing of picture resolutions can include, for example, downsizing from full-size D1 resolution to common intermediate format CIF resolution. - Turning now to
FIG. 7 , certain embodiments of the invention employ a processing system that includes at least onecomputing system 70 deployed to perform certain of the steps described above.Computing system 70 may be a commercially available system that executes commercially available operating systems such as Microsoft Windows®, UNIX or a variant thereof, Linux, a real time operating system and or a proprietary operating system. The architecture of the computing system may be adapted, configured and/or designed for integration in the processing system, for embedding in one or more of an image capture system, communications device and/or graphics processing systems. In one example,computing system 70 comprises abus 702 and/or other mechanisms for communicating between processors, whether those processors are integral to the computing system 70 (e.g. 704, 705) or located in different, perhaps physically separated computing systems 700. Typically,processor 704 and/or 705 comprises a CISC or RISC computing processor and/or one or more digital signal processors. In some embodiments,processor 704 and/or 705 may be embodied in a custom device and/or may perform as a configurable sequencer.Device drivers 703 may provide output signals used to control internal and external components and to communicate betweenprocessors -
Computing system 70 also typically comprisesmemory 706 that may include one or more of random access memory (“RAM”), static memory, cache, flash memory and any other suitable type of storage device that can be coupled tobus 702.Memory 706 can be used for storing instructions and data that can cause one or more ofprocessors Main memory 706 may be used for storing transient and/or temporary data such as variables and intermediate information generated and/or used during execution of the instructions byprocessor Computing system 70 also typically comprises non-volatile storage such as read only memory (“ROM”) 708, flash memory, memory cards or the like; non-volatile storage may be connected to thebus 702, but may equally be connected using a high-speed universal serial bus (USB), Firewire or other such bus that is coupled tobus 702. Non-volatile storage can be used for storing configuration, and other information, including instructions executed byprocessors 704 and/or 705. Non-volatile storage may also includemass storage device 710, such as a magnetic disk, optical disk, flash disk that may be directly or indirectly coupled tobus 702 and used for storing instructions to be executed byprocessors 704 and/or 705, as well as other information. - In some embodiments,
computing system 70 may be communicatively coupled to adisplay system 712, such as an LCD flat panel display, including touch panel displays, electroluminescent display, plasma display, cathode ray tube or other display device that can be configured and adapted to receive and display information to a user ofcomputing system 70. Typically,device drivers 703 can include a display driver, graphics adapter and/or other modules that maintain a digital representation of a display and convert the digital representation to a signal for driving adisplay system 712.Display system 712 may also include logic and software to generate a display from a signal provided by system 700. In that regard,display 712 may be provided as a remote terminal or in a session on adifferent computing system 70. Aninput device 714 is generally provided locally or through a remote system and typically provides for alphanumeric input as well ascursor control 716 input, such as a mouse, a trackball, etc. It will be appreciated that input and output can be provided to a wireless device such as a PDA, a tablet computer or other system suitable equipped to display the images and provide user input. - In certain embodiments,
computing system 70 may be embedded in a system that captures and/or processes images, including video images. In one example, computing system may include a video processor oraccelerator 717, which may have its own processor, non-transitory storage and input/output interfaces. In another example, video processor oraccelerator 717 may be implemented as a combination of hardware and software operated by the one ormore processors computing system 70 functions as a video encoder, although other functions may be performed by computingsystem 70. In particular, a video encoder that comprisescomputing system 70 may be embedded in another device such as a camera, a communications device, a mixing panel, a monitor, a computer peripheral, and so on. - According to one embodiment of the invention, portions of the described invention may be performed by computing
system 70.Processor 704 executes one or more sequences of instructions. For example, such instructions may be stored inmain memory 706, having been received from a computer-readable medium such asstorage device 710. Execution of the sequences of instructions contained inmain memory 706 causesprocessor 704 to perform process steps according to certain aspects of the invention. In certain embodiments, functionality may be provided by embedded computing systems that perform specific functions wherein the embedded systems employ a customized combination of hardware and software to perform a set of predefined tasks. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software. - The term “computer-readable medium” is used to define any medium that can store and provide instructions and other data to
processor 704 and/or 705, particularly where the instructions are to be executed byprocessor 704 and/or 705 and/or other peripheral of the processing system. Such medium can include non-volatile storage, volatile storage and transmission media. Non-volatile storage may be embodied on media such as optical or magnetic disks, including DVD, CD-ROM and BluRay. Storage may be provided locally and in physical proximity toprocessors computing system 704, as in the example of BluRay, DVD or CD storage or memory cards or sticks that can be easily connected or disconnected from a computer using a standard interface, including USB, etc. Thus, computer-readable media can include floppy disks, flexible disks, hard disks, magnetic tape, any other magnetic medium, CD-ROMs, DVDs, BluRay, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH/EEPROM, any other memory chip or cartridge, or any other medium from which a computer can read. - Transmission media can be used to connect elements of the processing system and/or components of
computing system 70. Such media can include twisted pair wiring, coaxial cables, copper wire and fiber optics. Transmission media can also include wireless media such as radio, acoustic and light waves. In particular radio frequency (RF), fiber optic and infrared (IR) data communications may be used. - Various forms of computer readable media may participate in providing instructions and data for execution by
processor 704 and/or 705. For example, the instructions may initially be retrieved from a magnetic disk of a remote computer and transmitted over a network or modem tocomputing system 70. The instructions may optionally be stored in a different storage or a different part of storage prior to or during execution. -
Computing system 70 may include acommunication interface 718 that provides two-way data communication over a network 720 that can include alocal network 722, a wide area network or some combination of the two. For example, an integrated services digital network (ISDN) may used in combination with a local area network (LAN). In another example, a LAN may include a wireless link. Network link 720 typically provides data communication through one or more networks to other data devices. For example, network link 720 may provide a connection throughlocal network 722 to ahost computer 724 or to a wide are network such as theInternet 728.Local network 722 andInternet 728 may both use electrical, electromagnetic or optical signals that carry digital data streams. -
Computing system 70 can use one or more networks to send messages and data, including program code and other information. In the Internet example, aserver 730 might transmit a requested code for an application program throughInternet 728 and may receive in response a downloaded application that provides or augments functional modules such as those described in the examples above. The received code may be executed byprocessor 704 and/or 705. - The foregoing descriptions of the invention are intended to be illustrative and not limiting. For example, those skilled in the art will appreciate that the invention can be practiced with various combinations of the functionalities and capabilities described above, and can include fewer or additional components than described above. Certain additional aspects and features of the invention are further set forth below, and can be obtained using the functionalities and components described in more detail above, as will be appreciated by those skilled in the art after being taught by the present disclosure.
- Certain embodiments of the invention provide video encoders, systems and methods for characterizing video encoding processes. Some of these embodiments comprise maintaining information relating a plurality of non-zero coefficients expected from quantization of a macroblock to one or more quantization parameters used in a video encoding process. Some of these embodiments comprise generating actual non-zero coefficients during video encoding of the macroblock. Some of these embodiments comprise calculating a deviation metric representing a weighted difference between the actual non-zero coefficients and the expected non-zero coefficients. Some of these embodiments comprise adjusting the video encoding process using the deviation metric. In some of these embodiments, the video encoding process is adjusted to obtain an optimized encoding bit rate for a desired video encoding quality.
- In some of these embodiments, adjusting the video encoding process using the deviation metric includes adjusting the quantizing parameter based on a normalized value of the deviation metric. In some of these embodiments, the relationship between video encoding quality and the quantizing parameter is a function of motion complexity of a sequence of video frames to be encoded. In some of these embodiments, the normalized deviation metric value varies around a value of 1.0. In some of these embodiments, a normalized deviation metric value greater than 1.0 is indicative of a larger than expected encoded bit rate. In some of these embodiments, an increase in the normalized deviation metric value is indicative of am increase in complexity of motion contextual content. In some of these embodiments, the quantizing parameter is a function of the deviation metric. In some of these embodiments, adjusting the video encoding process using the deviation metric includes selecting a quantizing parameter using the deviation metric to index a table.
- Some of these embodiments comprise the step of selecting an encoding mode using the deviation metric. In some of these embodiments, the encoding mode is selected to maintain a constant bit rate for frame encoding. Some of these embodiments comprise the step of allocating bits to frames based on temporal and spatial changes between a sequence of frames. In some of these embodiments, the bits are allocated to maintain a target minimum video quality.
- Certain embodiments of the invention provide a video encoder and related methods. Some of these embodiments comprise a storage configured to maintain information relating a plurality of non-zero coefficients expected from quantization of a macroblock to one or more quantization parameters used in a video encoding process. Some of these embodiments comprise an encoder configured to receive a sequence of video frames and to encode macroblocks within the video frames. In some of these embodiments, the encoder generates actual non-zero coefficients during video encoding of the macroblocks. Some of these embodiments comprise a table of quantization parameters controlled by the encoder. In some of these embodiments, the encoder selects a quantization parameter for a current macroblock using deviation metric representing a weighted difference between the actual non-zero coefficients and the expected non-zero coefficients. In some of these embodiments, the video encoding process is adjusted to obtain an optimized encoding bit rate for a desired video encoding quality.
- In some of these embodiments, the quantizing parameter is selected using a normalized value of the deviation metric. In some of these embodiments, the quantizing parameter is selected to achieve a target video encoding quality. In some of these embodiments, video encoding quality and quantizing parameters are related by a function of motion complexity of the sequence of video frames. In some of these embodiments, the method is performed by a processor in a video encoder that is configured to execute one or more computer program modules.
- Although the present invention has been described with reference to specific exemplary embodiments, it will be evident to one of ordinary skill in the art that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
Claims (19)
1. A method of video encoding performed by a video encoder comprising:
providing in non-transitory storage information relating a plurality of expected non-zero coefficients obtained from quantization of a macroblock to one or more quantization parameters used in a video encoding process;
generating information relating a plurality of actual non-zero coefficients obtained during video encoding of the macroblock to the one or more quantization parameters;
calculating a deviation metric comprising a ratio of the actual non-zero coefficients and the expected non-zero coefficients for one or more quantization step size; and
adjusting the video encoding process using the deviation metric to obtain an encoding bit rate for a desired video encoding quality.
2. The method of claim 2 , wherein the deviation metric comprises a recursive weighted ratio and wherein adjusting the video encoding process includes using the deviation metric to obtain an optimized encoding bit rate for a predefined bit rate budget.
3. The method of claim 1 , wherein adjusting the video encoding process using the deviation metric includes adjusting at least one quantizing parameter based on a normalized deviation metric value.
4. The method of claim 3 , wherein the relationship between video encoding quality and the at least one quantizing parameter is a function of motion complexity of a sequence of video frames to be encoded.
5. The method of claim 3 , wherein the normalized deviation metric value varies around a value of 1.0, wherein a normalized deviation metric value greater than 1.0 is indicative of a larger than expected encoded bit rate.
6. The method of claim 3 , wherein an increase in the normalized deviation metric value is indicative of an increase in complexity of motion contextual content.
7. The method of claim 3 , wherein the quantizing parameter is a function of the deviation metric.
8. The method of claim 3 , wherein adjusting the video encoding process using the deviation metric includes selecting a quantizing parameter using the deviation metric to index a table relating quantization parameters and deviation metrics for one or more target qualities.
9. The method of claim 1 , further comprising the step of selecting an encoding mode using the deviation metric, wherein the encoding mode is selected to maintain a constant bit rate for frame encoding.
10. The method of claim 1 , further comprising the step of allocating bits to frames based on temporal and spatial changes between a sequence of frames, wherein the bits are allocated to maintain a target minimum video quality.
11. A video encoder comprising:
an encoder configured to receive a sequence of video frames and to encode macroblocks within the video frames, wherein the encoder generates actual non-zero coefficients during video encoding of the macroblocks; and
a non-transitory storage adapted to maintain a table of quantization parameters, wherein the encoder is configured to select a quantization parameter from the table for a current macroblock using a deviation metric representing a weighted difference between actual non-zero coefficients generated for the current macroblock and non-zero coefficients expected for the current macroblock for one or more quantization step sizes,
wherein the selected quantization parameter is used to select an encoding bit rate used by the encoder for a desired video encoding quality.
12. The video encoder of claim 11 , wherein the quantizing parameter is selected using a normalized value of the deviation metric and wherein the deviation metric comprises a recursive weighted ratio of actual and expected non-zero coefficients.
13. The video encoder of claim 11 , wherein the quantizing parameter is selected to achieve a target video encoding quality.
14. The video encoder of claim 13 , wherein video encoding quality and quantizing parameters are related by a function of motion complexity of the sequence of video frames.
15. A non-transitory computer-readable medium encoded with data and instructions wherein the data and instructions, when executed by a processor of a video encoder, cause the video encoder to perform a video encoding method comprising:
generating actual non-zero coefficients during video encoding of a macroblock using a selected quantization parameter;
calculating a deviation metric representing a weighted difference between the actual non-zero coefficients and non-zero coefficients that were expected for the selected quantization parameter;
using the deviation metric to obtain an encoding bit rate and a desired video encoding quality for the macroblock.
16. The method of claim 15 , wherein the deviation metric used to obtain an optimized encoding bit rate and a desired video encoding quality for the macroblock comprises a normalized recursive ratio of actual and expected non-zero coefficients.
17. The method of claim 16 , wherein using the deviation metric to obtain a desired video encoding quality for the macroblock includes selecting a quantization parameter based on motion complexity of a sequence of video frames.
18. The method of claim 16 , wherein the deviation metric is normalized and has a value that varies around a value of 1.0, wherein a normalized deviation metric value greater than 1.0 is indicative of a larger than expected encoded bit rate.
19. The method of claim 16 , wherein an increase in the normalized deviation metric value is indicative of an increase in complexity of motion contextual content.
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2010/076555 WO2012027891A1 (en) | 2010-09-02 | 2010-09-02 | Video analytics for security systems and methods |
PCT/CN2010/076567 WO2012027893A1 (en) | 2010-09-02 | 2010-09-02 | Systems and methods for video content analysis |
CNPCT/CN2010/076555 | 2010-09-02 | ||
CNPCT/CN2010/076567 | 2010-09-02 | ||
CNPCT/CN2010/076569 | 2010-09-02 | ||
PCT/CN2010/076569 WO2012027894A1 (en) | 2010-09-02 | 2010-09-02 | Video classification systems and methods |
CNPCT/CN2010/076564 | 2010-09-02 | ||
PCT/CN2010/076564 WO2012027892A1 (en) | 2010-09-02 | 2010-09-02 | Rho-domain metrics |
Publications (1)
Publication Number | Publication Date |
---|---|
US20120057629A1 true US20120057629A1 (en) | 2012-03-08 |
Family
ID=45770713
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/225,222 Abandoned US20120057629A1 (en) | 2010-09-02 | 2011-09-02 | Rho-domain Metrics |
US13/225,238 Abandoned US20120057640A1 (en) | 2010-09-02 | 2011-09-02 | Video Analytics for Security Systems and Methods |
US13/225,202 Abandoned US20120057633A1 (en) | 2010-09-02 | 2011-09-02 | Video Classification Systems and Methods |
US13/225,269 Expired - Fee Related US8824554B2 (en) | 2010-09-02 | 2011-09-02 | Systems and methods for video content analysis |
US14/472,313 Expired - Fee Related US9609348B2 (en) | 2010-09-02 | 2014-08-28 | Systems and methods for video content analysis |
Family Applications After (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/225,238 Abandoned US20120057640A1 (en) | 2010-09-02 | 2011-09-02 | Video Analytics for Security Systems and Methods |
US13/225,202 Abandoned US20120057633A1 (en) | 2010-09-02 | 2011-09-02 | Video Classification Systems and Methods |
US13/225,269 Expired - Fee Related US8824554B2 (en) | 2010-09-02 | 2011-09-02 | Systems and methods for video content analysis |
US14/472,313 Expired - Fee Related US9609348B2 (en) | 2010-09-02 | 2014-08-28 | Systems and methods for video content analysis |
Country Status (1)
Country | Link |
---|---|
US (5) | US20120057629A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140328406A1 (en) * | 2013-05-01 | 2014-11-06 | Raymond John Westwater | Method and Apparatus to Perform Optimal Visually-Weighed Quantization of Time-Varying Visual Sequences in Transform Space |
CN104539890A (en) * | 2014-12-18 | 2015-04-22 | 苏州阔地网络科技有限公司 | Target tracking method and system |
US10091504B2 (en) | 2015-01-08 | 2018-10-02 | Microsoft Technology Licensing, Llc | Variations of rho-domain rate control |
US10298942B1 (en) * | 2015-04-06 | 2019-05-21 | Zpeg, Inc. | Method and apparatus to process video sequences in transform space |
US20190158856A1 (en) * | 2017-04-21 | 2019-05-23 | Zenimax Media Inc. | Systems and methods for rendering & pre-encoded load estimation based encoder hinting |
Families Citing this family (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007136745A2 (en) | 2006-05-19 | 2007-11-29 | University Of Hawaii | Motion tracking system for real time adaptive imaging and spectroscopy |
US20120057629A1 (en) * | 2010-09-02 | 2012-03-08 | Fang Shi | Rho-domain Metrics |
EP2747641A4 (en) | 2011-08-26 | 2015-04-01 | Kineticor Inc | Methods, systems, and devices for intra-scan motion correction |
US9213781B1 (en) | 2012-09-19 | 2015-12-15 | Placemeter LLC | System and method for processing image data |
US8850182B1 (en) * | 2012-09-28 | 2014-09-30 | Shoretel, Inc. | Data capture for secure protocols |
US20140096014A1 (en) * | 2012-09-29 | 2014-04-03 | Oracle International Corporation | Method for enabling dynamic client user interfaces on multiple platforms from a common server application via metadata |
US10327708B2 (en) | 2013-01-24 | 2019-06-25 | Kineticor, Inc. | Systems, devices, and methods for tracking and compensating for patient motion during a medical imaging scan |
US9305365B2 (en) | 2013-01-24 | 2016-04-05 | Kineticor, Inc. | Systems, devices, and methods for tracking moving targets |
US9717461B2 (en) | 2013-01-24 | 2017-08-01 | Kineticor, Inc. | Systems, devices, and methods for tracking and compensating for patient motion during a medical imaging scan |
CN109008972A (en) | 2013-02-01 | 2018-12-18 | 凯内蒂科尔股份有限公司 | The motion tracking system of real-time adaptive motion compensation in biomedical imaging |
EP2954505B1 (en) | 2013-02-08 | 2019-09-11 | Robert Bosch GmbH | Adding user-selected mark-ups to a video stream |
US9177245B2 (en) | 2013-02-08 | 2015-11-03 | Qualcomm Technologies Inc. | Spiking network apparatus and method with bimodal spike-timing dependent plasticity |
KR101480348B1 (en) * | 2013-05-31 | 2015-01-09 | 삼성에스디에스 주식회사 | People Counting Apparatus and Method |
US9715005B2 (en) | 2013-06-06 | 2017-07-25 | Zih Corp. | Method, apparatus, and computer program product improving real time location systems with multiple location technologies |
US9699278B2 (en) | 2013-06-06 | 2017-07-04 | Zih Corp. | Modular location tag for a real time location system network |
US10437658B2 (en) | 2013-06-06 | 2019-10-08 | Zebra Technologies Corporation | Method, apparatus, and computer program product for collecting and displaying sporting event data based on real time data for proximity and movement of objects |
US11423464B2 (en) | 2013-06-06 | 2022-08-23 | Zebra Technologies Corporation | Method, apparatus, and computer program product for enhancement of fan experience based on location data |
US9517417B2 (en) | 2013-06-06 | 2016-12-13 | Zih Corp. | Method, apparatus, and computer program product for performance analytics determining participant statistical data and game status data |
US20140361875A1 (en) | 2013-06-06 | 2014-12-11 | Zih Corp. | Method, apparatus, and computer program product for tag and individual correlation |
US10609762B2 (en) | 2013-06-06 | 2020-03-31 | Zebra Technologies Corporation | Method, apparatus, and computer program product improving backhaul of sensor and other data to real time location system network |
US20150085111A1 (en) * | 2013-09-25 | 2015-03-26 | Symbol Technologies, Inc. | Identification using video analytics together with inertial sensor data |
JP2015136057A (en) * | 2014-01-17 | 2015-07-27 | ソニー株式会社 | Communication device, communication data generation method, and communication data processing method |
WO2015148391A1 (en) | 2014-03-24 | 2015-10-01 | Thomas Michael Ernst | Systems, methods, and devices for removing prospective motion correction from medical imaging scans |
US9589363B2 (en) * | 2014-03-25 | 2017-03-07 | Intel Corporation | Object tracking in encoded video streams |
US10169661B2 (en) * | 2014-03-28 | 2019-01-01 | International Business Machines Corporation | Filtering methods for visual object detection |
US9939253B2 (en) | 2014-05-22 | 2018-04-10 | Brain Corporation | Apparatus and methods for distance estimation using multiple image sensors |
US9713982B2 (en) | 2014-05-22 | 2017-07-25 | Brain Corporation | Apparatus and methods for robotic operation using video imagery |
US10194163B2 (en) * | 2014-05-22 | 2019-01-29 | Brain Corporation | Apparatus and methods for real time estimation of differential motion in live video |
US10432896B2 (en) * | 2014-05-30 | 2019-10-01 | Placemeter Inc. | System and method for activity monitoring using video data |
US9626616B2 (en) | 2014-06-05 | 2017-04-18 | Zih Corp. | Low-profile real-time location system tag |
WO2015186044A1 (en) | 2014-06-05 | 2015-12-10 | Zih Corp. | Receiver processor for adaptive windowing and high-resolution toa determination in a multiple receiver target location system |
US20150375083A1 (en) | 2014-06-05 | 2015-12-31 | Zih Corp. | Method, Apparatus, And Computer Program Product For Enhancement Of Event Visualizations Based On Location Data |
US9668164B2 (en) | 2014-06-05 | 2017-05-30 | Zih Corp. | Receiver processor for bandwidth management of a multiple receiver real-time location system (RTLS) |
CA2951154C (en) | 2014-06-05 | 2019-08-13 | Zih Corp. | Systems, apparatus and methods for variable rate ultra-wideband communications |
US9661455B2 (en) | 2014-06-05 | 2017-05-23 | Zih Corp. | Method, apparatus, and computer program product for real time location system referencing in physically and radio frequency challenged environments |
CA2951120C (en) | 2014-06-05 | 2021-12-07 | Zih Corp. | Method for iterative target location in a multiple receiver target location system |
US9759803B2 (en) | 2014-06-06 | 2017-09-12 | Zih Corp. | Method, apparatus, and computer program product for employing a spatial association model in a real time location system |
AU2015270105A1 (en) | 2014-06-06 | 2016-12-22 | Zih Corp. | Method, apparatus, and computer program product improving real time location systems with multiple location technologies |
US9848112B2 (en) | 2014-07-01 | 2017-12-19 | Brain Corporation | Optical detection apparatus and methods |
US10057593B2 (en) | 2014-07-08 | 2018-08-21 | Brain Corporation | Apparatus and methods for distance estimation using stereo imagery |
WO2016014718A1 (en) | 2014-07-23 | 2016-01-28 | Kineticor, Inc. | Systems, devices, and methods for tracking and compensating for patient motion during a medical imaging scan |
US9870617B2 (en) | 2014-09-19 | 2018-01-16 | Brain Corporation | Apparatus and methods for saliency detection based on color occurrence analysis |
US10037504B2 (en) * | 2015-02-12 | 2018-07-31 | Wipro Limited | Methods for determining manufacturing waste to optimize productivity and devices thereof |
US10043146B2 (en) * | 2015-02-12 | 2018-08-07 | Wipro Limited | Method and device for estimating efficiency of an employee of an organization |
US10043078B2 (en) * | 2015-04-21 | 2018-08-07 | Placemeter LLC | Virtual turnstile system and method |
US11334751B2 (en) | 2015-04-21 | 2022-05-17 | Placemeter Inc. | Systems and methods for processing video data for activity monitoring |
US9712828B2 (en) * | 2015-05-27 | 2017-07-18 | Indian Statistical Institute | Foreground motion detection in compressed video data |
US10380431B2 (en) | 2015-06-01 | 2019-08-13 | Placemeter LLC | Systems and methods for processing video streams |
US10197664B2 (en) | 2015-07-20 | 2019-02-05 | Brain Corporation | Apparatus and methods for detection of objects using broadband signals |
US9943247B2 (en) | 2015-07-28 | 2018-04-17 | The University Of Hawai'i | Systems, devices, and methods for detecting false movements for motion correction during a medical imaging scan |
CN108697367A (en) | 2015-11-23 | 2018-10-23 | 凯内蒂科尓股份有限公司 | Systems, devices and methods for patient motion to be tracked and compensated during medical image scan |
US10075640B2 (en) * | 2015-12-31 | 2018-09-11 | Sony Corporation | Motion compensation for image sensor with a block based analog-to-digital converter |
CN105809136A (en) | 2016-03-14 | 2016-07-27 | 中磊电子(苏州)有限公司 | Image data processing method and image data processing system |
US10694205B2 (en) * | 2017-12-18 | 2020-06-23 | Google Llc | Entropy coding of motion vectors using categories of transform blocks |
TWI720830B (en) * | 2019-06-27 | 2021-03-01 | 多方科技股份有限公司 | Image processing device and method thereof |
CN111901597B (en) * | 2020-08-05 | 2022-03-25 | 杭州当虹科技股份有限公司 | CU (CU) level QP (quantization parameter) allocation algorithm based on video complexity |
US11875495B2 (en) * | 2020-08-10 | 2024-01-16 | Tencent America LLC | Methods of video quality assessment using parametric and pixel level models |
US11425412B1 (en) * | 2020-11-10 | 2022-08-23 | Amazon Technologies, Inc. | Motion cues for video encoding |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167087A (en) * | 1996-12-03 | 2000-12-26 | Sony Corporation | Picture signal encoding method and apparatus and signal recording medium |
Family Cites Families (80)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3689796T2 (en) * | 1985-01-16 | 1994-08-04 | Mitsubishi Denki K.K., Tokio/Tokyo | Video coding device. |
US5128754A (en) * | 1990-03-30 | 1992-07-07 | New York Institute Of Technology | Apparatus and method for encoding and decoding video |
US6400996B1 (en) * | 1999-02-01 | 2002-06-04 | Steven M. Hoffberg | Adaptive pattern recognition based control system and method |
GB9510093D0 (en) * | 1995-05-18 | 1995-07-12 | Philips Electronics Uk Ltd | Interactive image manipulation |
US5854856A (en) * | 1995-07-19 | 1998-12-29 | Carnegie Mellon University | Content based video compression system |
US6782132B1 (en) * | 1998-08-12 | 2004-08-24 | Pixonics, Inc. | Video coding and reconstruction apparatus and methods |
US6795504B1 (en) * | 2000-06-21 | 2004-09-21 | Microsoft Corporation | Memory efficient 3-D wavelet transform for video coding without boundary effects |
US20050203927A1 (en) * | 2000-07-24 | 2005-09-15 | Vivcom, Inc. | Fast metadata generation and delivery |
US7868912B2 (en) | 2000-10-24 | 2011-01-11 | Objectvideo, Inc. | Video surveillance system employing video primitives |
US6987866B2 (en) * | 2001-06-05 | 2006-01-17 | Micron Technology, Inc. | Multi-modal motion estimation for video sequences |
US6662564B2 (en) * | 2001-09-27 | 2003-12-16 | Siemens Westinghouse Power Corporation | Catalytic combustor cooling tube vibration dampening device |
US20030159152A1 (en) * | 2001-10-23 | 2003-08-21 | Shu Lin | Fast motion trick mode using dummy bidirectional predictive pictures |
JP4099973B2 (en) | 2001-10-30 | 2008-06-11 | 松下電器産業株式会社 | Video data transmission method, video data reception method, and video surveillance system |
CN101448162B (en) * | 2001-12-17 | 2013-01-02 | 微软公司 | Method for processing video image |
US20030163477A1 (en) | 2002-02-25 | 2003-08-28 | Visharam Mohammed Zubair | Method and apparatus for supporting advanced coding formats in media files |
PT1486065E (en) | 2002-03-15 | 2016-03-30 | Nokia Technologies Oy | Method for coding motion in a video sequence |
GB0227565D0 (en) * | 2002-11-26 | 2002-12-31 | British Telecomm | Method and system for generating panoramic images from video sequences |
GB0227566D0 (en) * | 2002-11-26 | 2002-12-31 | British Telecomm | Method and system for estimating global motion in video sequences |
GB0227570D0 (en) * | 2002-11-26 | 2002-12-31 | British Telecomm | Method and system for estimating global motion in video sequences |
US7474355B2 (en) * | 2003-08-06 | 2009-01-06 | Zoran Corporation | Chroma upsampling method and apparatus therefor |
US20050047504A1 (en) * | 2003-09-03 | 2005-03-03 | Sung Chih-Ta Star | Data stream encoding method and apparatus for digital video compression |
EP1513350A1 (en) * | 2003-09-03 | 2005-03-09 | Thomson Licensing S.A. | Process and arrangement for encoding video pictures |
US7317839B2 (en) * | 2003-09-07 | 2008-01-08 | Microsoft Corporation | Chroma motion vector derivation for interlaced forward-predicted fields |
US7672370B1 (en) * | 2004-03-16 | 2010-03-02 | 3Vr Security, Inc. | Deep frame analysis of multiple video streams in a pipeline architecture |
US20060062478A1 (en) * | 2004-08-16 | 2006-03-23 | Grandeye, Ltd., | Region-sensitive compression of digital video |
US20060056511A1 (en) * | 2004-08-27 | 2006-03-16 | University Of Victoria Innovation And Development Corporation | Flexible polygon motion estimating method and system |
US8243820B2 (en) * | 2004-10-06 | 2012-08-14 | Microsoft Corporation | Decoding variable coded resolution video with native range/resolution post-processing operation |
US8948266B2 (en) * | 2004-10-12 | 2015-02-03 | Qualcomm Incorporated | Adaptive intra-refresh for digital video encoding |
US8340172B2 (en) | 2004-11-29 | 2012-12-25 | Qualcomm Incorporated | Rate control techniques for video encoding using parametric equations |
CN101112101A (en) | 2004-11-29 | 2008-01-23 | 高通股份有限公司 | Rate control techniques for video encoding using parametric equations |
US8391368B2 (en) | 2005-04-08 | 2013-03-05 | Sri International | Macro-block based mixed resolution video compression system |
US20060232673A1 (en) * | 2005-04-19 | 2006-10-19 | Objectvideo, Inc. | Video-based human verification system and method |
US7801330B2 (en) * | 2005-06-24 | 2010-09-21 | Objectvideo, Inc. | Target detection and tracking from video streams |
US8879856B2 (en) * | 2005-09-27 | 2014-11-04 | Qualcomm Incorporated | Content driven transcoder that orchestrates multimedia transcoding using content information |
CN100456834C (en) * | 2005-10-17 | 2009-01-28 | 华为技术有限公司 | Method for monitoring service quality of H.264 multimedia communication |
US8130828B2 (en) * | 2006-04-07 | 2012-03-06 | Microsoft Corporation | Adjusting quantization to preserve non-zero AC coefficients |
CN100551072C (en) | 2006-06-05 | 2009-10-14 | 华为技术有限公司 | Quantization matrix system of selection in a kind of coding, device and decoding method and system |
US20070291118A1 (en) * | 2006-06-16 | 2007-12-20 | Shu Chiao-Fe | Intelligent surveillance system and method for integrated event based surveillance |
JP4363421B2 (en) | 2006-06-30 | 2009-11-11 | ソニー株式会社 | Monitoring system, monitoring system server and monitoring method |
KR100773761B1 (en) | 2006-09-14 | 2007-11-09 | 한국전자통신연구원 | The apparatus and method of moving picture encoding |
US20080074496A1 (en) * | 2006-09-22 | 2008-03-27 | Object Video, Inc. | Video analytics for banking business process monitoring |
WO2008046243A1 (en) | 2006-10-16 | 2008-04-24 | Thomson Licensing | Method and device for encoding a data stream, method and device for decoding a data stream, video indexing system and image retrieval system |
WO2008072249A2 (en) * | 2006-12-15 | 2008-06-19 | Mango D.S.P. Ltd | System, apparatus and method for flexible modular programming for video processors |
US20080184245A1 (en) * | 2007-01-30 | 2008-07-31 | March Networks Corporation | Method and system for task-based video analytics processing |
CN100508610C (en) | 2007-02-02 | 2009-07-01 | 清华大学 | Method for quick estimating rate and distortion in H.264/AVC video coding |
US7595815B2 (en) * | 2007-05-08 | 2009-09-29 | Kd Secure, Llc | Apparatus, methods, and systems for intelligent security and safety |
CN101325689A (en) | 2007-06-16 | 2008-12-17 | 翰华信息科技(厦门)有限公司 | System and method for monitoring mobile phone remote video |
US10116904B2 (en) * | 2007-07-13 | 2018-10-30 | Honeywell International Inc. | Features in video analytics |
CN101090498B (en) | 2007-07-19 | 2010-06-02 | 华为技术有限公司 | Device and method for motion detection of image |
US20090031381A1 (en) * | 2007-07-24 | 2009-01-29 | Honeywell International, Inc. | Proxy video server for video surveillance |
US9734464B2 (en) * | 2007-09-11 | 2017-08-15 | International Business Machines Corporation | Automatically generating labor standards from video data |
US8624733B2 (en) * | 2007-11-05 | 2014-01-07 | Francis John Cusack, JR. | Device for electronic access control with integrated surveillance |
CN101179729A (en) | 2007-12-20 | 2008-05-14 | 清华大学 | Interframe mode statistical classification based H.264 macroblock mode selecting method |
JP2011507415A (en) * | 2007-12-20 | 2011-03-03 | エーティーアイ・テクノロジーズ・ユーエルシー | Coordinating video processing in a system having a video sending device and a video receiving device |
EP2238758A4 (en) * | 2008-01-24 | 2013-12-18 | Micropower Technologies Inc | Video delivery systems using wireless cameras |
US9584710B2 (en) * | 2008-02-28 | 2017-02-28 | Avigilon Analytics Corporation | Intelligent high resolution video system |
TWI506565B (en) * | 2008-03-03 | 2015-11-01 | Avo Usa Holding 2 Corp | Dynamic object classification |
US8872940B2 (en) * | 2008-03-03 | 2014-10-28 | Videoiq, Inc. | Content aware storage of video data |
US8128503B1 (en) * | 2008-05-29 | 2012-03-06 | Livestream LLC | Systems, methods and computer software for live video/audio broadcasting |
US8897359B2 (en) * | 2008-06-03 | 2014-11-25 | Microsoft Corporation | Adaptive quantization for enhancement layer video coding |
US8325228B2 (en) * | 2008-07-25 | 2012-12-04 | International Business Machines Corporation | Performing real-time analytics using a network processing solution able to directly ingest IP camera video streams |
CN101389029B (en) | 2008-10-21 | 2012-01-11 | 北京中星微电子有限公司 | Method and apparatus for video image encoding and retrieval |
CN101389023B (en) | 2008-10-21 | 2011-10-12 | 镇江唐桥微电子有限公司 | Adaptive movement estimation method |
US8301792B2 (en) * | 2008-10-28 | 2012-10-30 | Panzura, Inc | Network-attached media plug-in |
JP2010128727A (en) * | 2008-11-27 | 2010-06-10 | Hitachi Kokusai Electric Inc | Image processor |
KR101173560B1 (en) | 2008-12-15 | 2012-08-13 | 한국전자통신연구원 | Fast mode decision apparatus and method |
CN101448145A (en) | 2008-12-26 | 2009-06-03 | 北京中星微电子有限公司 | IP camera, video monitor system and signal processing method of IP camera |
US20100215104A1 (en) * | 2009-02-26 | 2010-08-26 | Akira Osamoto | Method and System for Motion Estimation |
US8675736B2 (en) * | 2009-05-14 | 2014-03-18 | Qualcomm Incorporated | Motion vector processing |
US9420250B2 (en) * | 2009-10-07 | 2016-08-16 | Robert Laganiere | Video analytics method and system |
US8780978B2 (en) * | 2009-11-04 | 2014-07-15 | Qualcomm Incorporated | Controlling video encoding using audio information |
US9191425B2 (en) * | 2009-12-08 | 2015-11-17 | Citrix Systems, Inc. | Systems and methods for remotely presenting a multimedia stream |
US8306314B2 (en) * | 2009-12-28 | 2012-11-06 | Mitsubishi Electric Research Laboratories, Inc. | Method and system for determining poses of objects |
CN101778260B (en) | 2009-12-29 | 2012-01-04 | 公安部第三研究所 | Method and system for monitoring and managing videos on basis of structured description |
US8503539B2 (en) * | 2010-02-26 | 2013-08-06 | Bao Tran | High definition personal computer (PC) cam |
US20110221895A1 (en) * | 2010-03-10 | 2011-09-15 | Vinay Sharma | Detection of Movement of a Stationary Video Camera |
US9143739B2 (en) * | 2010-05-07 | 2015-09-22 | Iwatchlife, Inc. | Video analytics with burst-like transmission of video data |
US20120057629A1 (en) * | 2010-09-02 | 2012-03-08 | Fang Shi | Rho-domain Metrics |
US8890936B2 (en) * | 2010-10-12 | 2014-11-18 | Texas Instruments Incorporated | Utilizing depth information to create 3D tripwires in video |
EP2697967B1 (en) * | 2011-04-15 | 2020-08-19 | Performance and Privacy Ireland Ltd. | Real-time video detector |
-
2011
- 2011-09-02 US US13/225,222 patent/US20120057629A1/en not_active Abandoned
- 2011-09-02 US US13/225,238 patent/US20120057640A1/en not_active Abandoned
- 2011-09-02 US US13/225,202 patent/US20120057633A1/en not_active Abandoned
- 2011-09-02 US US13/225,269 patent/US8824554B2/en not_active Expired - Fee Related
-
2014
- 2014-08-28 US US14/472,313 patent/US9609348B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6167087A (en) * | 1996-12-03 | 2000-12-26 | Sony Corporation | Picture signal encoding method and apparatus and signal recording medium |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140328406A1 (en) * | 2013-05-01 | 2014-11-06 | Raymond John Westwater | Method and Apparatus to Perform Optimal Visually-Weighed Quantization of Time-Varying Visual Sequences in Transform Space |
US10021423B2 (en) | 2013-05-01 | 2018-07-10 | Zpeg, Inc. | Method and apparatus to perform correlation-based entropy removal from quantized still images or quantized time-varying video sequences in transform |
US10070149B2 (en) * | 2013-05-01 | 2018-09-04 | Zpeg, Inc. | Method and apparatus to perform optimal visually-weighed quantization of time-varying visual sequences in transform space |
CN104539890A (en) * | 2014-12-18 | 2015-04-22 | 苏州阔地网络科技有限公司 | Target tracking method and system |
US10091504B2 (en) | 2015-01-08 | 2018-10-02 | Microsoft Technology Licensing, Llc | Variations of rho-domain rate control |
US10298942B1 (en) * | 2015-04-06 | 2019-05-21 | Zpeg, Inc. | Method and apparatus to process video sequences in transform space |
US20190158856A1 (en) * | 2017-04-21 | 2019-05-23 | Zenimax Media Inc. | Systems and methods for rendering & pre-encoded load estimation based encoder hinting |
US11202084B2 (en) * | 2017-04-21 | 2021-12-14 | Zenimax Media Inc. | Systems and methods for rendering and pre-encoded load estimation based encoder hinting |
US11503313B2 (en) | 2017-04-21 | 2022-11-15 | Zenimax Media Inc. | Systems and methods for rendering and pre-encoded load estimation based encoder hinting |
Also Published As
Publication number | Publication date |
---|---|
US20140369417A1 (en) | 2014-12-18 |
US20120057633A1 (en) | 2012-03-08 |
US20120057634A1 (en) | 2012-03-08 |
US9609348B2 (en) | 2017-03-28 |
US8824554B2 (en) | 2014-09-02 |
US20120057640A1 (en) | 2012-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20120057629A1 (en) | Rho-domain Metrics | |
US9215466B2 (en) | Joint frame rate and resolution adaptation | |
US20220030244A1 (en) | Content adaptation for streaming | |
US9402034B2 (en) | Adaptive auto exposure adjustment | |
US10205953B2 (en) | Object detection informed encoding | |
EP2727344B1 (en) | Frame encoding selection based on frame similarities and visual quality and interests | |
US20150350641A1 (en) | Dynamic range adaptive video coding system | |
US8493499B2 (en) | Compression-quality driven image acquisition and processing system | |
US20180349705A1 (en) | Object Tracking in Multi-View Video | |
US20120195356A1 (en) | Resource usage control for real time video encoding | |
US20180302621A1 (en) | Techniques for Calculation of Quantization Matrices in Video Coding | |
US20190132594A1 (en) | Noise Level Control in Video Coding | |
US20190104315A1 (en) | Scene Based Rate Control for Video Compression and Video Streaming | |
US20180184089A1 (en) | Target bit allocation for video coding | |
WO2019001283A1 (en) | Method and apparatus for controlling encoding resolution ratio | |
US20130235928A1 (en) | Advanced coding techniques | |
US10051281B2 (en) | Video coding system with efficient processing of zooming transitions in video | |
US20140029663A1 (en) | Encoding techniques for banding reduction | |
CN115428451A (en) | Video encoding method, encoder, system, and computer storage medium | |
KR20160068657A (en) | Method and device for real-time encoding | |
WO2012027892A1 (en) | Rho-domain metrics | |
US8731048B2 (en) | Efficient temporal search range control for video encoding processes | |
CN114374841B (en) | Optimization method and device for video coding rate control and electronic equipment | |
WO2012042701A1 (en) | Multi-stream encoding control device and camera system | |
US20240283952A1 (en) | Adaptive coding tool selection with content classification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERSIL AMERICAS INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHI, FANG;WANG, BIAO;WU, QI;AND OTHERS;SIGNING DATES FROM 20110913 TO 20110923;REEL/FRAME:027002/0742 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: INTERSIL AMERICAS LLC, CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:INTERSIL AMERICAS INC.;REEL/FRAME:037558/0706 Effective date: 20111230 |