Computing device, computer program, and computer-implemented method for earthquake detection

By processing visual inputs from IP cameras to detect abnormal vibrations and correct for camera movements, the system provides real-time earthquake intensity measurement, addressing the limitations of current systems and enhancing disaster response capabilities.

JP7679138B2Active Publication Date: 2025-05-19INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2021196739
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-12-22
Filing Date
2021-12-03
Publication Date
2025-05-19
Estimated Expiration
2041-12-03

AI Technical Summary

Technical Problem

Current earthquake detection systems rely on costly seismometers for magnitude measurement and post-event surveys for intensity assessment, lacking real-time intensity measurement capabilities essential for timely disaster response.

Method used

A computer-implemented method using a network of IP cameras to detect abnormal vibrations during earthquakes by processing visual inputs, correcting for camera vibrations, and inferring earthquake parameters such as location, magnitude, and depth.

Benefits of technology

Enables real-time detection and measurement of earthquake intensity, facilitating early warning systems and improving evacuation and rescue operations by leveraging existing IP camera networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007679138000001
    Figure 0007679138000001
  • Figure 0007679138000002
    Figure 0007679138000002
  • Figure 0007679138000003
    Figure 0007679138000003
Patent Text Reader

Abstract

To provide a computing device for earthquake detection, a computer program, and a computer-implemented method.SOLUTION: From each of a plurality of cameras, visual input of a location is received over a network. For each visual input from the plurality of cameras, coupling correction for shaking of the camera with respect to the visual input is performed by subtracting velocity vectors of the plurality of cameras from the velocity vectors of a plurality of pixels defining the visual input to prepare processed input. It is determined whether shaking identified in the processed input is above a predetermined threshold based on the processed input, thereby detecting one or more anomalies. From the one or more anomalies, at least one of a location, magnitude, and depth of an earthquake are inferred based on the shaking identified in the processed input of each of the plurality of cameras.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to earthquake detection systems and methods, and more particularly, to systems, computer programs, and computer-implemented methods for measuring the magnitude and intensity of earthquakes. The present disclosure relates to earthquake detection and response by distributed visual input.

Background Art

[0002] Earthquakes (hereinafter also referred to as EQs) occur worldwide, causing thousands of casualties and billions of dollars in damage (e.g., Indonesia (2004): 227,000, $8.71 billion, or Japan (2011): 15,000, $360 billion). EQs are characterized by their severity, which is represented by their location (epicenter), depth, as well as magnitude (on the Richter scale) and intensity (e.g., on the Modified Mercalli scale). Magnitude is the released seismic energy and is recorded by a dense observational network of costly seismometers. Intensity is the observed effect on the Earth's surface, from the perceived shaking to the structural damage of buildings. Since magnitude is not related to the EQ effect, intensity is the characteristic of real interest for disaster response. The intensity scale is based on arbitrary ranking and is evaluated by questionnaire surveys sent some time after the EQ. Real-time intensity measurement enables early warning messages and determines evacuation and rescue missions. Accurate earthquake prediction is considered practically impossible with current methods and technologies by experts. For magnitude, earthquake warning systems (EWSs) provide timely detection and issue warnings within seconds.

Summary of the Invention

Problems to be Solved by the Invention

[0003] The present invention aims to provide a computing device, a computer program, and a computer-implemented method for earthquake detection. **Means for Solving the Problem**

[0004] According to various embodiments, a non-transitory computer-readable storage medium, a computer-implemented method, and a computer program product are provided for recognizing abnormal vibrations during an earthquake by a plurality of cameras associated with a cloud. Visual inputs of positions are received from each of the plurality of cameras via a network. For each visual input from the plurality of cameras, a coupling correction of the vibration of the camera with respect to the visual input is performed by subtracting the velocity vectors of the plurality of cameras from the velocity vectors of the plurality of pixels defining the visual input, thereby preparing a processed input. It is determined based on the processed input whether the identified vibration in the processed input exceeds a predetermined threshold, thereby detecting one or more anomalies. Based on the identified vibrations in the processed input of each of the plurality of cameras, at least one of the location, magnitude, or depth of the earthquake is inferred from the one or more anomalies.

[0005] In one embodiment, the seismic intensity of the earthquake is determined based on the identified vibrations in the processed input of each of the plurality of cameras.

[0006] In one embodiment, the inference of at least one of the location, magnitude, or depth includes extracting and aggregating at least one local approximation of a phase delay of a predetermined maximum pixel value applied to each pixel position in the visual input and an amplitude of a maximum value of pixel positions in the entirety of the visual input.

[0007] In one embodiment, the vibration is measured by changes for each of one or more pixels of the processed input.

[0008] In one embodiment, for at least one visual input from the plurality of cameras, a temporal spectral analysis of each change for each pixel in at least one image of the visual input is performed. A spectral decomposition of the at least one image of the visual input is determined.

[0009] In one embodiment, an artificial intelligence (AI) model is trained to detect earthquake parameters based on the visual input from the plurality of cameras. The trained AI model is applied to visual inputs from different sets of multiple cameras at remote locations.

[0010] In one embodiment, after the identified earthquake is completed, at least one indicator of the magnitude, location, or depth of the identified earthquake is stored in a predetermined memory.

[0011] In one embodiment, the calibration of the plurality of cameras is improved via external earthquake sensor data.

[0012] The techniques described herein may be implemented in a plurality of ways. Exemplary implementations are provided below with reference to the accompanying drawings.

[0013] The drawings are of exemplary embodiments. The drawings do not show all embodiments. Other embodiments may be used additionally or alternatively. Explicit or unnecessary details may be omitted for space savings or more effective explanation. Some embodiments may be implemented with additional components or steps or combinations thereof, or without all of the components of the shown components or steps, or with additional components or steps or combinations thereof and without all of the components of the shown components or steps. When the same numerical values are shown in different drawings, those numerical values refer to the same or similar components or steps.

Brief Description of the Drawings

[0014]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

[0015] Overview In the following detailed description of the invention, numerous specific details are set forth by way of example in order to provide a thorough understanding of the relevant teachings. It should be apparent, however, that the present teachings may be practiced without such details. In other instances, well-known methods, procedures, components, or circuits, or combinations thereof, have been described at a relatively high level in order to avoid unnecessarily obscuring aspects of the present teachings.

[0016] Prior to an earthquake, a plurality of Internet Protocol (IP) cameras deployed over a particular region or location for surveillance or weather observation provide video streams and coordinates that are communicated online via the Internet or to a dedicated network. Video from these cameras is generally provided free of charge. The teachings herein collect information from such cameras and provide meaningful insight into seismic activity at one or more locations.

[0017] In one aspect, during an earthquake, abnormal vibrations in the captured scenes are recognized across a plurality of Internet Protocol (IP) cameras, which provide distributed visual input of the location via an interface with a cloud or dedicated network, thereby defining at least a portion of a system for earthquake detection.

[0018] Various embodiments include the step of measuring the positional vibration due to the change for each pixel of at least one image appearing in at least one of a plurality of cameras, or instructions for performing or implementing such measurement. The coupling of the change for each pixel of natural objects or artificial objects or natural and artificial objects is corrected from the change for each pixel induced by the vibration of at least one of the plurality of cameras in at least one image. At least one of the magnitude, position, or depth of an earthquake can be estimated. Next, an evaluation of the seismic intensity of the earthquake can be provided.

[0019] In one embodiment, a spectral analysis over time of the change for each pixel in at least one image is performed to effect spectral decomposition. The spectral analysis can separate the change for each pixel over time, by phase delay, frequency shift, and amplitude, into a first group representing the scene in at least one image and a second group representing at least one of the plurality of cameras. It should be noted that in the present disclosure, an observer can also correspond to a camera.

[0020] In one embodiment, local approximations of phase delay, frequency shift, and amplitude are extracted and aggregated to estimate at least one of the magnitude or seismic intensity of an earthquake. The local approximations of phase delay, frequency shift, and amplitude are considered to be the local effects of an earthquake generated at the location of the camera when calculated by a server located at the center of one group of cameras or a plurality of cameras. The location and depth of an earthquake can be estimated.

[0021] Inferring the characteristics of EQ(Y) from the inputs of various cameras (X) is a problem of supervised regression with a function f that cannot be observed while X and Y are being observed. However, since these IP cameras are similar, the model of the central server is recalibrated. The central server has a model (f_estimate), which theoretically relates visual input to EQ events, i.e., f_estimate(X) = Y_estimate.

[0022] After an EQ occurs (when X and Y are available), the Y generated from the seismic network remains as it is, and the EQ location etc. can be estimated almost completely (summarized in Y), and the model error (Y_estimate - Y) can be evaluated. The server (e.g., the seismic analysis engine running on the server) can re-calibrate the model to f_estimate_new such that f_estimate_new(X) is exactly equal to Y.

[0023] After an earthquake, at least one indicator of the magnitude, location, or depth of the earthquake, as well as an assessment of the seismic intensity of the earthquake, can be stored in a suitable memory. Further, the system calibration can be improved. For example, the central server can improve the learned EQ estimation model through additional evaluation of external seismic sensor data and the seismic intensity of the earthquake. In addition, more IP cameras can be deployed at locations where existing IP cameras are sparsely distributed in the area so that the input from the existing network of IP cameras is insufficient.

[0024] After each EQ (and some "events" that are not EQs), according to the newly available data, records of the training data are added and the existing AI is re-trained. This changes the parameter values of the AI (re-calibrates the AI). However, the model architecture, its input, and the code remain the same. Moreover, it can be automated to be performed periodically.

[0025] As described above, before an earthquake, a plurality of IP cameras are deployed across a specific area or location for monitoring or weather observation. The video streams and coordinates are communicated online via the Internet or a dedicated network. Various embodiments of the present disclosure are facilitated by video streams from a plurality of IP cameras.

[0026] According to the concepts discussed in this specification, existing seismographs and seismic intensity indicators are utilized before an earthquake occurs. During an earthquake, images provided by IP cameras can be detached, and computer vision algorithms are generated. Signals from a dedicated earthquake perception network are processed by an artificial intelligence (AI) network that translates and improves the heuristics of the Mercalli intensity scale for earthquake intensity measurement.

[0027] The AI model can be trained or extended on new closed-circuit television (CCTV) to transfer detection capabilities from existing CCTV to new CCTV. In one embodiment, when a single camera goes black, it may be due to malfunction, removal, etc., and may not provide sufficient information regarding earthquake detection. However, if multiple cameras go black (e.g., in a city) and other cameras in the vicinity of that location are aware of the EQ event, it may indicate that an EQ has occurred, and there is a possibility that it is causing a power outage in that city (thereby cutting off the power of many cameras). In one embodiment, in the case of signal loss (correlated closely in time and space, when other functioning cameras capture vibrations), this indicates an EQ.

[0028] The vibration of the camera may deviate slightly from the overall frequency of the earthquake, just like any object within its field of view. The algorithm identifies abnormal vibrations and the magnitude of the vibrations via a deep learning system. In one embodiment, triangulation among multiple cameras is used to identify the amount of vibration. The triangulation is implicitly learned by the AI system. The AI system can relate inputs from different geographical locations within one system.

[0029] For example, consider a series of IP camera images mapped to an embedding vector (e.g., by a deep neural network (DNN)) via AI. This embedding vector, which can contain hundreds of floating-point numbers, is a non-linear, low-dimensional storage representation indicating what is happening in the video. These embedding vectors (and latitude / longitude) are merged together as a joint (subsequent) input to actual EQ detection.

[0030] However, since such an AI system is learned "end-to-end", embedding learning and actual EQ detection are merged together in one AI system. Therefore, in one embodiment, there is no explicit triangulation algorithm used. The system learns on its own from the embedding vectors as well as the latitude and longitude. The model automatically associates IP camera inputs from the same neighborhood when inferring an EQ event at its approximate location.

[0031] Seismic networks provide the ground truth of EQ characteristics (such as magnitude) called Y. As an example, during an earthquake, imagine a video footage with a duration of one minute. Through spectral decomposition, at time t = 30 seconds, the vector value Y is inferred at a position ±10 seconds from its string value, magnitude, and position. A second video is overlaid to determine X tilde (X~). Note that X is the endogenous model input, i.e., the video input X is the original video input. The X~ is the input derived by calculating spectral decomposition along the video image. Therefore, this is simply an addition of features that enables the AI to identify EQs more accurately and quickly. Thus, as used herein, the variable X is understood to be the entire input, the raw features plus the derived features, i.e., X := (X, X~).

[0032] Inferring the characteristics of EQ (Y) from the inputs of various cameras (X) is a problem of supervised regression with a function f that cannot be observed while X and Y are being observed. However, since these IP cameras are the same, the model on the central server is recalibrated. The central server has a model (f_estimate), which theoretically relates visual inputs to EQ events, i.e., f_estimate(X) = Y_estimate. After an EQ occurs (when X and Y are available), the Y resulting from the seismic observation network remains as it is, and the EQ location, etc., can be inferred almost completely (summarized in Y), and the model error (Y_estimate - Y) can be evaluated. Next, the server can recalibrate the model to f_estimate_new such that f_estimate_new(X) is more closely equal to Y. The vibrations within the image of one camera may simply be a noisy estimator of the EQ's strength / location.

[0033] Seismic sensors are well calibrated, but such seismic sensors are expensive, sparsely deployed, and require additional knowledge (e.g., regarding the surrounding geological characteristics). In this regard, since knowledge outside the field of view is provided at that time, IP cameras are not only noisy estimators of seismic activity but also very local estimators. In addition, IP cameras are ubiquitous. The more cameras are utilized, the more inputs are available to the AI for automatically learning to infer EQ characteristics from distributed visual inputs.

[0034] In this specification, spectral decomposition refers to a simple fixed transformation motivated spectrally that is applied to camera images to enhance the input signal. No explicit physical formulation is embedded. In one embodiment, the AI model does not perform physical operations such as seismic inversion.

[0035] In one embodiment, the AI model treats EQ detection as an end-to-end regression problem with (e.g., increased) video input (X) and EQ characteristics (Y). The coupling correction / anomaly detection defined herein is not an explicitly defined / modular component of the AI, but rather refers to the internal workings of modern AI, where "X" is the endogenous model input, i.e., the video input, and "Y" is the exogenous output (given as ground truth), i.e., the earthquake characteristics (latitude, longitude, depth, magnitude, and intensity). In short, in one embodiment, Y is a 5-dimensional vector.

[0036] In one embodiment, Y is estimated by an earthquake sensor observation network that may take several minutes. When an EQ starts, Y is not available because the earthquake sensors are still in the process of earthquake inversion to obtain Y. However, the AI earthquake analysis engine can calculate an estimate from the video input of what its Y (the characteristics of the EQ) might be and provide an alert if a predetermined (magnitude) threshold is exceeded.

[0037] In one embodiment, the earthquake analysis engine applies deep learning via a convolutional neural network to filter out vibrations, enabling Y to self-calibrate. The camera has one specific shaking pattern. Although a convolutional neural network is used as an example, the teachings of this specification are not limited thereto.

[0038] Since the ground truth Y of the EQ is used at a later time / day and compared with Y_estimate from the EQ model, self-calibration simply refers to the model retraining step. That is, the self-calibration refers to applying stochastic gradient descent (SGD) to data with one new observation, i.e., the X and Y of the last observed EQ.

[0039] Figure 1 shows the location 10 of an earthquake EQ that emits seismic waves SW1...SWn towards the ground surface 15 where the first structure 21 and the second structure 22 are located.

[0040] An IP camera 20 is attached to the second structure 22 at a height H from the ground surface 15. During an earthquake (EQ), the IP camera 20 vibrates perpendicular to the direction of the double-headed arrow A-A, and the first structure 21 vibrates perpendicular to the direction of the double-headed arrow A'-A', thereby producing a distorted image captured by the IP camera 20.

[0041] As a very simplified diagram of the coupling correction and the application of the seismic analysis engine, the distorted image transmitted by the IP camera 20 is subjected to coupling correction through an algorithm applied by the seismic analysis engine, as will be discussed in more detail later. The IP camera 20 has a field of view 25 that includes the first structure 21. During the earthquake EQ, the first structure 21 has a velocity vector VS in the direction of the arrow A'-A', while the IP camera 20 has a velocity vector VC in the direction of the arrow A-A. Therefore, the coupling correction is applied by subtracting the camera's velocity vector VC from the velocity vector VS of the structure where a reference plane, for example, the ground surface 15 at location 10, is established. Each pixel in the image captured by the IP camera 20 typically has its own distinct velocity vector due to the difference in the forces exerted by the earthquake EQ. Differences in angular velocity and horizontal and diagonal vibrations also affect the image and the coupling correction requirements. Such problems can be addressed by alternative techniques having additional applications of deep learning and convolutional neural networks or spectral decomposition. Spectral decomposition is a seismic analysis technique known in the art, particularly for oil field drilling. Therefore, since those skilled in the art will understand the process in light of the present disclosure, the process is not illustrated herein in the drawings in more detail.

[0042] FIG. 2 is a simplified process flow diagram of a seismic detection and response system 100 via distributed visual input according to an embodiment of the present disclosure.

[0043] FIG. 3 is a process flow diagram of a seismic detection and response system via distributed visual input that conforms to an exemplary embodiment. Prior to an earthquake and prior to the installation of the embodiments of the present disclosure, a plurality of IP cameras 20a... 20n are pre - placed at locations intended to monitor for the occurrence of an earthquake. However, the plurality of IP cameras 20a... 20n may be placed simultaneously with, or after, the installation of a seismic analysis engine / server 110 (see FIG. 2) dedicated to observing the locations intended to monitor for the occurrence of an earthquake. In fact, this timing of placing the seismic analysis engine / server 110 relative to the interconnection of external software and hardware applies to various functions, such as the earthquake warning system, disaster response management, and seismic monitoring network shown in FIGS. 2 and 3. In this specification, the seismic analysis engine / server 110 is referred to as the seismic analysis engine 110.

[0044] A plurality of IP cameras 20a...20n communicate with the Internet, cloud 102, and additionally or alternatively, a dedicated network 104. The IP cameras 20a...20n transmit image data 40a...40n to the Internet-cloud 102 or the dedicated network 104. The Internet-cloud 102 or the dedicated network 104 transmits the corresponding positions and video streams 40a’...40n’ to the seismic analysis engine 110. In various embodiments, the seismic analysis engine 110 can be a software package operating on a dedicated server or cloud or a combination thereof. The seismic analysis engine 110 performs coupling correction 44 of the positions and video streams 40a’...40n’ to generate processed video streams 42a...42n for the corresponding positions, and converts the processed video streams 42a...42n for the corresponding positions into corresponding numerical indicators or metrics 44a...44n for the video streams of the corresponding cameras and positions.

[0045] Coupling correction 44 refers to the ability of artificial intelligence (AI) algorithms (most notably, but not limited to, convolutional neural networks) to filter out various types of image disturbances (such as vibrations, changes in the field of view, etc.) for image recognition tasks (such as object recognition, segmentation, etc.). For example, in a supervised learning problem of inferring earthquake characteristics from distributed visual inputs, convolution adapts during the model training process to learn a lower-dimensional embedding vector that is nearly invariant to image disturbances, such as camera vibrations, and effectively filters out such disturbances. Since Internet Protocol (IP) cameras are (usually firmly) mounted outside or inside buildings, the amplitude of vibrations of these cameras is fairly constant over time during earthquake events, while (unmounted) objects within images of various weights, robustness, and ruggedness vibrate to varying degrees. Thus, it is considered easy for various AI algorithms to automatically separate the vibrations of the camera itself from the impact of earthquakes on objects within the image. However, it should be noted that this coupling correction is not accurate, i.e., the movement of all objects within the image cannot be fully tracked. However, since this system simply incorporates N camera inputs to infer some major earthquake characteristics, this is ultimately not the purpose or function of this system. For this task, (approximate) coupling correction is sufficient to reliably infer earthquake events from distributed visual inputs.

[0046] As described above with respect to FIG. 1, the coupling correction 44 is applied to correct the coupling between the plurality of cameras 20, 20a... 20n and the scenes imaged by the plurality of cameras for a more accurate assessment of seismic energy. The coupling correction 44 is applied by subtracting the camera velocity vector VC from the velocity vectors of the pixels defining the visual input. Applications such as convolutional neural networking and spectral decomposition are applied to perform the coupling correction. Spectral decomposition involves a spectral analysis of the changes over time within the pixels for a given video stream. The separation of the pixel spectra is performed by phase delay, frequency shift, and amplitude between two individual groups, namely the observer, i.e., the scene imaged by the camera, and the camera itself.

[0047] Each reference to spectral decomposition in this specification simply refers to a proposed fixed transformation of one set of input videos (images) to increase the visual input to the AI, which is subsequently incorporated and thus represents the per-pixel changes applied in this disclosure.

[0048] Next, the processed video streams 42a... 42n and metrics 44a... 44n are subjected to anomaly detection 46 by the seismic analysis engine 110. If one or more anomalies are detected, the seismic analysis engine 110 performs the functions of seismic detection 120 and data storage 130, and the seismic analysis engine 110 internally enters the earthquake occurrence operation mode. Next, the earthquake detection system 120 performs earthquake inversion 122 and intensity measurement 124 for magnitude, position, and depth via the seismic analysis engine 110 to evaluate the severity of the earthquake EQ and the magnitude of the damage caused by the earthquake EQ.

[0049] It is important to recognize that the earthquake detection and response system 100 described herein has the characteristic of being a substantially subsystem executed by the earthquake analysis engine 110. For this reason, as an example, the earthquake detection system 120 is called a system, but in fact, it can be regarded as a subsystem for the overall earthquake detection and response system 100. Other functions, such as earthquake inversion 122 and seismic intensity measurement 124, etc., can also be regarded as subsystems of the earthquake detection and response system 100.

[0050] The analysis results of both the earthquake inversion 122 and the seismic intensity measurement 124 are transferred to the earthquake early warning or response system 140, the response management system 150, and the existing earthquake observation network 160. The video stream 126 and the earthquake indicator value 128 are also transferred from the data storage 130 to the earthquake early warning or response system 140, the response management system 150, and the existing earthquake observation network 160.

[0051] Following the earthquake, the existing earthquake observation network 160 transfers the seismometer analysis 48 to the earthquake analysis engine 110 for the recalibration process 170, and the earthquake analysis engine 110 transfers the recalibrated analysis 50 to the earthquake detection system 120 and the anomaly detection 46 to correct for the impending aftershocks and the occurrence of future earthquakes.

[0052] Exemplary architecture Figures 4 - 10 are combination method block diagrams of the pre - earthquake, during - earthquake, and post - earthquake states of the earthquake detection and response system 100 via distributed visual input, which conform to an exemplary embodiment. More particularly, FIG. 4 is a combination method block diagram of the pre - earthquake state of the earthquake detection and response system 100 via distributed visual input, prior to operation, according to an embodiment of the present disclosure. Prior to earthquake EQ, a plurality of IP cameras 20a...20n are arranged over a specific area or location L for monitoring or weather observation, and transmit image data 40a...40n to the Internet cloud 102 or a dedicated network 104. The video streams and coordinates of camera positions 42a...42n are communicated online, generally free of charge, via the Internet 102 or a dedicated network 104. Various embodiments of the present disclosure are facilitated by the video streams of positions 42a...42n from a plurality of IP cameras 20a...20n. Various existing camera positions approximate the possible span of the earthquake detection system 100 via distributed visual input. For practical purposes, earthquake EQ can be inferred when it occurs within such a network of IP cameras (not too far from the network of IP cameras 20a...20n). The more densely the IP cameras are arranged in the area, the more certain the characteristics inferred regarding the earthquake event become. Regardless, no threshold regarding the number of cameras or camera density within the area is required to facilitate useful earthquake detection via distributed input. Therefore, a pre - trained EQ detection system (from one region on Earth) can be used to infer an earthquake event from a single IP camera on the opposite side of the world, but this is far from ideal as the earthquake characteristics are only roughly estimated.

[0053] Moreover, a fixed spatial resolution is not required. The IP camera system can span a city, state / region, country, or the world as a whole. FIGS. 4 and 5 constitute a subset of IP cameras in which a seismic event EQ is detected by the seismic detection system 120. The images shown depict the disaster area in the same vicinity (however, all inputs from the IPs are considered by the EQ detection system 120).

[0054] In a manner similar to FIG. 4, FIG. 5 illustrates the occurrence of an earthquake EQ, where the seismic analysis engine 110 recognizes abnormal vibrations across a plurality of cameras 20a... 20n that provide distributed visual input at location L. Video streams 42a0... 42n0 represent the visual input at location L at time t0, while video streams 42a1... 42n1 represent the visual input at location L at time t1.

[0055] FIG. 6 is a conceptual block diagram of the correction of pixel-by-pixel changes within an image during the occurrence of an earthquake, in accordance with an exemplary embodiment. For example, during the occurrence of an earthquake EQ, the seismic analysis engine 110 corrects the coupling (number 44) of pixel-by-pixel changes in at least one of the plurality of cameras 20a... 20n, which are induced by vibrations, to pixel-by-pixel changes in natural or artificial objects or both natural and artificial objects within at least one image 42a1... 42n1, resulting in indicators 44a... 44n that are transmitted to anomaly detection 46 as images 46a... 46n.

[0056] Referring now to FIG. 7, FIG. 7 is a conceptual block diagram of the estimation of the magnitude, location, and depth of an earthquake EQ by seismic inversion, in accordance with an exemplary embodiment. In one embodiment, with respect to anomaly detection 46, the coupling correction 44 performed by the seismic analysis engine 110 may further include separating the spectral analysis of pixel-by-pixel changes over time, by phase delay, frequency shift, and amplitude, into a first group representing the scene within at least one image 40a... 40n and a second group representing at least one of the plurality of cameras 20a... 20n.

[0057] Separation of the time - series spectral analysis refers to transfer learning, that is, after having a set of IP cameras 20a...20n including the learned AI, applying the learned AI to a new set of IP cameras (i.e., completely different regions of the world). A model from the first region (having cameras of the first "group") can be used within the new region (having IP cameras of the second "group"). However, the model is retrained (i.e., after an EQ event occurs).

[0058] The phase delay (in seconds) defined herein is the time delay between the maximum pixel values (applied to each pixel position in a pre - defined video). The amplitude defined herein is the maximum value of the pixel positions across the entire input video.

[0059] In one embodiment, with respect to anomaly detection 46, the seismic analysis engine 110 may further include extracting and aggregating local approximations of phase delay, frequency shift, and amplitude to infer at least the magnitude 122 and intensity 124 of the seismic EQ. Further with respect to anomaly detection 46, the seismic analysis engine 110 may further include inferring the location and depth 122 of the seismic EQ. Anomaly detection 46, strictly separation correction 44, is implicitly learned by the model. Similar to the case where the distributed visual inputs X and X~ are used to learn the seismic characteristics Y in the case of a seismic event, the model always infers the absence of an earthquake by estimating Y (magnitude 0, depth 0, any latitude, longitude) from the visual inputs X and X~. Therefore, anomaly detection 46 simply refers to the presence of non - ordinary values of each feature. In contrast to seismic sensors, since the visual inputs from the IP cameras 20a...20n are learned end - to - end with their positions to infer the presence / absence of an earthquake, there is no physical derivation of the involved features (such as velocity vectors, etc.).

[0060] FIG. 9 is a conceptual block diagram of the evaluation of the seismic intensity of an earthquake (EQ) after an earthquake, which conforms to an exemplary embodiment. For example, after the earthquake EQ, the earthquake analysis engine 110 stores at least one of the magnitude, location, or depth of the earthquake EQ, the main video stream 126, the indicator 122 as the earthquake indicator value 128, and the evaluation 124 of the seismic intensity of the earthquake (see FIGS. 2 and 3).

[0061] FIG. 10 is a conceptual block diagram of the improvement of the calibration of a plurality of cameras 20a... 20n with external earthquake sensor data (see the recalibration process 170 and the recalibration analysis 50 in FIGS. 2 and 3) and the additional evaluation of the seismic intensity, which conforms to an exemplary embodiment. For example, after the earthquake, the earthquake analysis engine 110 maintains the AI model architecture and the visual input in a fixed state. However, next, the earthquake analysis engine 110 causes the AI model parameters to be re-evaluated by a retraining step, that is, the recalibration process 170. Here, next, a new pair of visual input and earthquake characteristics is added to the previous history records of the visual input and the earthquake event characteristics. This AI model retraining step can be performed periodically and can be automatically triggered at a fixed period (for example, daily, weekly, monthly). The earthquake detection system 120 can distinguish between earthquakes and non-earthquake events for various types of distributed visual input. Thus, the history records include not only earthquake events but also non-earthquake events (with a magnitude value of 0, a seismic intensity value of 0, and any latitude / longitude).

[0062] Exemplary computer platform As discussed above, as shown in FIGS. 1-10, functions related to recognizing abnormal vibrations across a plurality of Internet Protocol (IP) cameras that provide distributed visual inputs of location via interfacing with a cloud or a dedicated network during an earthquake can be implemented by using one or more computing devices connected for data communication via wireless or wired communication. FIG. 11 is a functional block diagram of a computer hardware platform that can communicate with various networked components, such as networked IP cameras, clouds, etc. In particular, FIG. 11 illustrates a network or host computer platform 1100 that can be used to implement a server, such as the earthquake analysis engine 110 of FIG. 2.

[0063] The computer platform 1100 can include a central processing unit (CPU) 1104, a hard disk drive (HDD) 1106, a random access memory (RAM) or a read only memory (ROM) 1108, or a combination thereof, a keyboard 1110, a mouse 1112, a display 1114, and a communication interface 1116, which are connected to a system bus 1102.

[0064] In one embodiment, HDD 1106 has the ability to store programs, such as seismic analysis engine 1140, that can execute various processes in the manner described herein. The seismic analysis engine 1140 may have various modules configured to perform different functions. For example, a coupling correction module 1142 may be provided, and the coupling correction module 1142 is applied to subtract the camera's velocity vector from the velocity vectors of a plurality of pixels that define the visual input for the image displayed by the camera. The coupling correction can be performed by convolutional neural networking and spectral decomposition executed by the coupling correction module 1142.

[0065] A video processing and indicator module 1144 may be provided, and the video processing and indicator module 1144 processes the video stream subjected to the coupling correction and converts the coupled corrected video stream into an indicator of the movement that occurred at the position and time of each individual image within the video stream.

[0066] An anomaly detection module 1146 may be provided, and the anomaly detection module 1146 analyzes the processed video stream and indicators to determine the occurrence of abnormal movement of one or more structures imaged by the camera. Such abnormal movement is then identified as an anomaly by module 1146.

[0067] A seismic detection module 1148 may be provided, and the seismic detection module 1148 processes one or more anomalies received from the anomaly detection module and performs seismic inversion and intensity assessment.

[0068] A seismic inversion and intensity assessment module 1150 may be provided, and the seismic inversion and intensity assessment module 1150 calculates the magnitude, position, and depth of the earthquake and performs intensity assessment. This information is then transmitted to the earthquake early warning system and for disaster response management.

[0069] A data storage module 1152 may be provided, and the data storage module 1152 stores the anomalies identified by the anomaly detection module 1146 and the anomalies received from the anomaly detection module 1146.

[0070] A main video stream and earthquake indicator value module 1154 may be provided, and the main video stream and earthquake indicator value module 1154 receives higher priority video streams and earthquake indicator values from the data storage module 1152 and then transmits those video streams and indicator values to the earthquake early warning system and for disaster response management.

[0071] An existing earthquake observation network module 1156 may be provided, and the existing earthquake observation network module 1156 receives data from the earthquake inversion and intensity evaluation module 1150 and data from the main video stream and earthquake indicator value module 1154 that can transfer data for post-earthquake recalibration.

[0072] A recalibration module 1158 may be provided, and the recalibration module 1158 recalibrates data from the earthquake inversion and intensity evaluation module 1150 and data from the main video stream and earthquake indicator value module 1154 and then transfers these results to the anomaly detection module 1146 and the earthquake detection module 1148 to improve the accuracy of impending aftershocks and future earthquakes.

[0073] Exemplary cloud platform As discussed above, functions related to earthquake detection and response via distributed visual inputs may include the cloud 102 or the network 104 (see FIG. 2). Although this disclosure includes a detailed description of cloud computing, it should be understood that implementations of the teachings described herein are not limited to cloud computing environments. Rather, embodiments of the disclosure can be implemented in connection with any other type of computing environment now known or later developed.

[0074] Cloud computing is a service delivery model that enables convenient on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be rapidly provisioned and released with minimal management effort or interaction with a service provider. This cloud model can include at least five characteristics, at least three service models, and at least four deployment models.

[0075] The characteristics are as follows.

[0076] On-demand self-service: A cloud consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed, without the need for human interaction with a service provider.

[0077] Broad network access: The capabilities are available over a network and accessed via standard mechanisms that promote use by heterogeneous thin client platforms or thick client platforms (e.g., mobile phones, laptops, and PDAs).

[0078] Resource pooling: The provider's computing resources are pooled to serve multiple consumers using a multi-tenant model, and various physical and virtual resources are dynamically assigned and re-assigned according to demand. Consumers generally do not have control or knowledge of the exact location of the provided resources, but can be said to be location-independent in that they can identify a location at a higher level of abstraction (e.g., country, state, or data center).

[0079] Rapid elasticity: Functions are provisioned quickly and elastically, and in some cases automatically, scaled out quickly, released quickly, and scaled in quickly. For consumers, the functions available for provisioning are often unlimited and can be purchased in any amount at any time.

[0080] Measured service: The cloud system automatically controls and optimizes resource usage by using a metering function at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage is monitored, controlled, and reported, providing transparency for both the provider and the consumer of the services utilized.

[0081] The service model is as follows.

[0082] Software as a Service (SaaS): A function provided to consumers to use an application of a provider running in a cloud infrastructure. The application is accessible from various client devices through a thin client interface, such as a web browser (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure, which may include the underlying cloud infrastructure such as network, server, operating system, storage, or even individual application functions, with the possible exception of limited user-specific application configuration settings.

[0083] Platform as a Service (PaaS): A function provided to consumers to deploy consumer-generated or acquired applications, generated using programming languages and tools supported by a provider, onto a cloud infrastructure. The consumer does not manage or control the underlying cloud infrastructure, which may include the underlying cloud infrastructure such as network, server, operating system, or storage, but has control over the deployed applications and, in some cases, the application hosting environment configuration.

[0084] Infrastructure as a Service (IaaS) as a service: A function provided to a consumer to provision processing, storage, networks, and other basic computing resources for the consumer to deploy and run any software that can include an operating system and applications. The consumer does not manage or control the underlying cloud infrastructure but has limited control over the operating system, storage, control of deployed applications, and, in some cases, the selection of network components (e.g., the host firewall).

[0085] Deployment Models are as follows.

[0086] Private Cloud: The cloud infrastructure is operated only for a particular organization. The cloud infrastructure can be managed by the organization or a third party and can exist on-premises or off-premises.

[0087] Community Cloud: The cloud infrastructure is shared by several organizations and supports a specific community with common concerns (e.g., mission, security requirements, policies, and compliance considerations). The cloud infrastructure can be managed by the organization or a third party and can exist on-premises or off-premises.

[0088] Public Cloud: The cloud infrastructure is available to the general public or a large industry group and is owned by an organization that sells cloud services.

[0089] Hybrid Cloud: A hybrid of two or more clouds (private, community, or public) where the cloud infrastructure remains a distinct entity but is joined by standardized or proprietary technologies that enable the migration of data and applications (e.g., cloud bursting for load distribution between clouds).

[0090] Cloud computing environments are directed services that focus on statelessness, low coupling, modularity, and semantic interoperability. The heart of cloud computing is the infrastructure that includes a network of interconnected nodes.

[0091] Referring now to FIG. 12, an illustrative cloud computing environment 1200 is depicted. As shown, cloud computing environment 1200 includes one or more cloud computing nodes 1210 with which local computing devices used by cloud users, such as, for example, personal digital assistants (PDAs) or cellular telephones 1254A, desktop computers 1254B, laptop computers 1254C, or automotive computer systems 1254N or a combination thereof, may communicate. The plurality of nodes 1210 can communicate with one another. The nodes 1210 may be physically or virtually grouped (not shown) in one or more networks such as, for example, the private, community, public, or hybrid clouds described hereinabove, or a combination thereof. This allows cloud computing environment 1250 to provide infrastructure, platforms, or software, or combinations thereof, as services for which cloud consumers do not have to maintain resources on local computing devices. It is intended that these types of computing devices 1254A - N shown in FIG. 12 are only examples, and that cloud computing nodes 1210 and cloud computing environment 1250 can communicate with any type of computerized device via any type of network or network addressable connection (e.g., using a web browser) or combinations thereof.

[0092] Referring now to FIG. 13, a set of functional abstraction layers provided by cloud computing environment 1250 (FIG. 12) is shown. It should be pre - understood that the components, layers, and functions shown in FIG. 13 are only intended to be examples and that embodiments of the present disclosure are not limited thereto. As shown, the following layers and corresponding functions are provided.

[0093] The hardware and software layer 1360 includes hardware and software components. Examples of hardware components include mainframe 1361, servers 1362 based on RISC (Reduced Instruction Set Computer) architecture, server 1363, blade server 1364, storage device 1365, and network and networking components 1366. In some embodiments, software components include network application server software 1367 and database software 1368.

[0094] The virtualization layer 1370 provides an abstraction layer from which the following examples of virtual entities can be provided: virtual server 1371, virtual storage 1372, virtual network 1373, including virtual network 1373 such as a virtual private network, virtual applications and operating systems 1374, and virtual clients 1375.

[0095] In one example, the management layer 1380 may provide the functions described below. Resource provisioning 1381 provides for the dynamic procurement of computing resources and other resources used to perform tasks within a cloud computing environment. Metering and pricing 1382 provides for cost tracking when resources are utilized within a cloud computing environment and for the creation of bills or invoices for the consumption of these resources. In one example, these resources may include application software licenses. Security provides for the authentication of cloud users and tasks and for the protection of data and other resources. The user portal 1383 provides access to the cloud computing environment for consumers and system administrators. Service level management 1384 provides for the allocation and management of cloud computing resources so that the required service levels are met. Planning and fulfillment of service level agreements (SLAs) 1385 provides for the pre-placement and procurement of cloud computing resources for which future requirements are anticipated in accordance with the SLA.

[0096] The workload layer 1390 provides examples of functions that a cloud computing environment may utilize. Examples of workloads and functions that can be provided from this layer include mapping and navigation 1391, software development and lifecycle management 1392, virtual classroom education delivery 1393, data analysis processing 1394, transaction processing 1395, and seismic analysis engines 1396, as discussed herein.

[0097] Conclusion The descriptions of various embodiments of the present invention are presented for illustrative purposes and are not intended to be exhaustive or to limit the invention to the disclosed embodiments. Similarly, examples of features or functions of the disclosed embodiments described herein are not intended to limit the disclosed embodiments described herein, whether used in a particular embodiment description or described as examples, nor to limit the disclosure to the examples described herein. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terms used herein are selected to explain the principles of the embodiments, the practical application to or technical improvement of the technology seen in the market, or to enable those skilled in the art to understand the embodiments disclosed herein.

[0098] In the foregoing, what is considered to be the best mode or other examples or combinations thereof has been described, but various changes can be made thereto, the subject matter disclosed herein can be implemented in various forms and examples, these teachings can be applied in numerous applications, and it will be understood that only some of them are described herein. Any and all applications, variations, and modifications that fall within the true scope of the teachings are intended by the appended claims.

[0099] The components, steps, features, objectives, benefits, and advantages discussed herein are merely illustrative. None of these or the discussions related thereto are intended to limit the scope of protection. Although various advantages are described herein, it will be understood that not all embodiments necessarily have all advantages. Unless otherwise stated, all measurements, values, ratings, positions, sizes, dimensions, and other specifications mentioned herein, including the claims, are approximate and not exact. They are intended to have a reasonable range consistent with the functions they relate to and common practice in the art.

[0100] Numerous other embodiments are also contemplated. These include embodiments having fewer, additional, or different, or combinations thereof, components, steps, features, objectives, benefits, and advantages. These also include embodiments in which the components or steps or combinations thereof are in a different arrangement or order or combinations thereof.

[0101] Aspects of the present disclosure are described herein in connection with the flow diagrams or block diagrams or combinations thereof of methods, apparatus (systems), and computer program products according to embodiments of the present disclosure. It will be understood that each step of the flow diagrams or block diagrams or combinations thereof, and combinations of blocks in the call flow diagrams or block diagrams or combinations thereof, can be implemented by computer-readable program instructions.

[0102] These computer-readable program instructions are provided to a computer's processor or other programmable data processing apparatus to generate means for implementing the specified functions / operations in one or more blocks of the call flow process or block diagram or combinations thereof, such that execution of the instructions via the processor of the computer or other programmable data processing apparatus can create a machine. These computer-readable program instructions can also be stored in a computer-readable storage medium having stored instructions that include a manufactured article that includes instructions for implementing the functionality / operations specified in one or more blocks of the flowchart diagram or block diagram or combinations thereof, such that the computer-readable storage medium can direct a computer-programmable data processing apparatus or other device or combinations thereof to function in a particular manner.

[0103] The computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices so that instructions executed on the computer, other programmable data processing apparatus, or other devices implement the functions / acts specified in one or more blocks of the flowchart(s) and / or block diagram(s) and thereby cause a series of operational steps to be performed on the computer, other programmable apparatus, or other devices to generate a process implemented on the computer.

[0104] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart process or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing a particular logical function(s). In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flowchart illustration, and combinations of blocks in the block diagrams and / or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

[0105] Although described above in connection with exemplary embodiments, it is understood that the term "exemplary" means not best or optimal, but merely an example. Except as otherwise described above, nothing described or illustrated is intended to or should be construed to contribute, in general, any component, step, feature, object, benefit, advantage, or equivalent.

[0106] As used herein, words and expressions have the ordinary meaning given to such words and expressions in their respective fields of search and study, unless a particular meaning is otherwise set forth herein. Words indicating relationships such as first and second can be used only to distinguish entities or acts from each other, and do not necessarily require or imply any actual such relationship or order between such entities or acts. The words "comprises," "comprising," or any other variant thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed or inherent to such process, method, article, or apparatus. Elements following an article ( "a" or "an") are not excluded from the presence of additional identical elements in the process, method, article, or apparatus that includes that element, without further limitation.

[0107] The abstract of the present disclosure is provided to enable a reader to quickly confirm the nature of the technical disclosure. It is submitted with the understanding that it is not to be used to interpret or limit the scope or meaning of the claims. Additionally, in the embodiments for carrying out the above invention, it can be seen that various features are grouped together in various embodiments for the purpose of simplifying the present disclosure. This disclosure method should not be construed as reflecting an intention that the claimed embodiments have more features than those clearly described in each claim. Rather, as reflected by separate claims, the subject matter of the present invention does not lie in all the features of the single disclosed embodiment. Accordingly, the separate claims are incorporated into the embodiments for carrying out the invention herein, and each claim exists independently as the separately claimed subject matter.

Explanation of Signs

[0108] 10 Position 15 Ground surface 20 IP camera 20a...20n IP cameras 21 First structure 22 Second structure 25 Field of view 40a...40n Image data 40a’...40n’ Position and video stream 42a...42n Processed video stream 42a0...42n0 Video stream 42a1...42n1 Video stream 44 Coupling correction 44a...44n Numerical indicator or metric 46 Anomaly detection 46a...46n Images 48 Seismometer analysis 50 Re-calibrated analysis 100 Earthquake detection and response system 102 Internet cloud 104 Dedicated network 110 Earthquake Analysis Engine / Server 120 Earthquake Detection System 122 Earthquake Inversion 124 Seismic Intensity Measurement 126 Video Stream 128 Earthquake Indicator Value 130 Data Storage 140 Earthquake Early Warning or Response System 150 Response Management System 160 Existing Earthquake Observation Network 170 Recalibration Process 1100 Network or Host Computer Platform 1102 System Bus 1104 Central Processing Unit (CPU) 1106 Hard Disk Drive (HDD) 1108 Random Access Memory (RAM) or Read - Only Memory (ROM) 1110 Keyboard 1112 Mouse 1114 Display 1116 Communication Interface 1140 Earthquake Analysis Engine 1142 Coupling Correction Module 1144 Video Processing and Indicator Module 1146 Anomaly Detection Module 1148 Earthquake Detection Module 1150 Earthquake Inversion and Seismic Intensity Evaluation Module 1152 Data Storage Module 1154 Main Video Stream and Earthquake Indicator Value Module 1156 Existing Earthquake Observation Network Module 1158 Recalibration Module 1200 Cloud Computing Environment 1210 Cloud Computing Node 1250 Cloud Computing Environment 1254A Personal Digital Assistant (PDA) or cellular phone 1254B Desktop computer 1254C Laptop computer 1254N Automotive computer system 1360 Hardware and software layer 1361 Mainframe 1362 Server based on RISC (Reduced Instruction Set Computer) architecture 1363 Server 1364 Blade server 1365 Storage device 1366 Network and networking components 1367 Network application server software 1368 Database software 1370 Virtualization layer 1371 Virtual server 1372 Virtual storage 1373 Virtual network 1374 Virtual applications and operating systems 1375 Virtual client 1380 Management layer 1381 Resource provisioning 1382 Metering and pricing 1383 User portal 1384 Service level management 1385 Service Level Agreement (SLA) planning and fulfillment 1390 Workload layer 1391 Mapping and navigation 1392 Software development and lifecycle management 1393 Virtualized classroom education delivery 1394 Data analysis processing 1395 Transaction processing 1396 Earthquake analysis engine EQ Earthquake H Height L position Seismic waves SW1...SWn Time t0 Time t1 Velocity vector VC of IP camera 20 Velocity vector VS of the first structure 21

Claims

1. 1. A computing device comprising: A processor; A storage device connected to the processor; Earthquake engine and and wherein execution of the earthquake engine by the processor comprises: receiving a visual input of a location over a network from each of a plurality of cameras; For each visual input from the plurality of cameras: performing a camera shake coupling correction on the visual input by subtracting velocity vectors of the cameras from velocity vectors of pixels defining the visual input to provide a processed input; and determining based on the processed input whether identified vibrations in the processed input exceed a predetermined threshold, thereby detecting one or more anomalies; and inferring at least one of an earthquake location, magnitude, or depth from the one or more anomalies based on the identified vibrations in the processed input of each of the plurality of cameras. The computing device is configured to cause the computing device to perform operations including:

2. 2. The computing device of claim 1, wherein execution of the earthquake engine by the processor is further configured to cause the computing device to perform operations including determining a seismic intensity of the earthquake based on the identified tremors in the processed input of each of the plurality of cameras.

3. 3. The computing device of claim 2, wherein the estimation of at least one of the location, magnitude or depth comprises extracting and aggregating local approximations of at least one of a phase delay of a predetermined maximum pixel value applied to each pixel location in the visual input and an amplitude of a maximum value for pixel locations across the visual input.

4. A computing device according to any preceding claim, wherein the tremor is measured by one or more pixel-by-pixel changes in the processed input.

5. The execution of the seismic engine by the processor comprises, for at least one visual input from the plurality of cameras: performing a time-lapse spectral analysis of each of the pixel-by-pixel changes within at least one image of the visual input; and determining a spectral decomposition of the at least one image of the visual input; The computing device of claim 4 , further configured to cause the computing device to perform operations including:

6. Execution of the earthquake engine by the processor comprises: training an artificial intelligence (AI) model to detect seismic parameters based on the visual inputs from the plurality of cameras; and Applying the trained AI model to visual inputs from multiple, different sets of cameras at different distances. The computing device of claim 5 , further configured to cause the computing device to perform operations including:

7. 7. The computing device of claim 1, wherein execution of the earthquake engine by the processor is further configured to cause the computing device to perform operations including storing, after completion of an identified earthquake, an indicator of at least one of the magnitude, location, or depth of the identified earthquake.

8. 8. The computing device of claim 1, wherein execution of the seismic engine by the processor is further configured to cause the computing device to perform operations including refining a calibration of the plurality of cameras via external seismic sensor data.

9. A computer program for implementing a method for detecting earthquakes, comprising: receiving a visual input of a location over a network from each of a plurality of cameras; For each visual input from the plurality of cameras: performing a camera shake coupling correction on the visual input by subtracting velocity vectors of the cameras from velocity vectors of pixels defining the visual input to provide a processed input; and determining based on the processed input whether identified vibrations in the processed input exceed a predetermined threshold, thereby detecting one or more anomalies; and inferring at least one of an earthquake location, magnitude, or depth from the one or more anomalies based on the identified vibrations in the processed input of each of the plurality of cameras. The computer program causes a computing device to execute the above-mentioned program.

10. determining a seismic intensity of the earthquake based on the identified vibrations in the processed input of each of the plurality of cameras.

10. The computer program product of claim 9, further comprising:

11. 11. The computer program product of claim 10, wherein the estimation of the at least one of the location, magnitude or depth comprises extracting and aggregating local approximations of at least one of a phase delay of a predetermined maximum pixel value applied to each pixel location in the visual input, and an amplitude of a maximum value for pixel locations across the visual input.

12. the vibration being measured by one or more pixel-by-pixel changes in the processed input; For at least one visual input from the plurality of cameras, performing a time-lapse spectral analysis of each of the pixel-by-pixel changes within at least one image of the visual input; and determining a spectral decomposition of the at least one image of the visual input; 10. The computer program product of claim 9, further comprising:

13. training an artificial intelligence (AI) model to detect seismic parameters based on the visual inputs from the plurality of cameras; and Applying the trained AI model to visual inputs from multiple, different sets of cameras at different distances.

13. The computer program product of claim 12, further comprising:

14. storing an indicator of at least one of the magnitude, location, or depth of the identified earthquake after completion of the identified earthquake. The computer program product according to any one of claims 9 to 13, further comprising:

15. Improving calibration of said plurality of cameras via external seismic sensor data The computer program product according to any one of claims 9 to 14, further comprising:

16. 1. A computer-implemented method comprising: receiving a visual input of a location over a network from each of a plurality of cameras; For each visual input from the plurality of cameras: performing a camera shake coupling correction on the visual input by subtracting velocity vectors of the cameras from velocity vectors of pixels defining the visual input to provide a processed input; and determining based on the processed input whether identified vibrations in the processed input exceed a predetermined threshold, thereby detecting one or more anomalies; and inferring at least one of an earthquake location, magnitude, or depth from the one or more anomalies based on the identified vibrations in the processed input of each of the plurality of cameras. The computer-implemented method comprising:

17. 17. The computer-implemented method of claim 16, further comprising determining a seismic intensity of the earthquake based on the identified tremors in the processed input of each of the plurality of cameras.

18. 20. The computer-implemented method of claim 17, wherein the estimation of at least one of the location, magnitude or depth comprises extracting and aggregating local approximations of at least one of a phase delay of a predetermined maximum pixel value applied to each pixel location in the visual input and an amplitude of a maximum value for pixel locations across the visual input.

19. The vibration is measured by one or more pixel-by-pixel changes in the processed input, and the computer-implemented method further comprises: For at least one visual input from the plurality of cameras, performing a time-lapse spectral analysis of each of the pixel-by-pixel changes within at least one image of the visual input; and determining a spectral decomposition of the at least one image of the visual input; The computer-implemented method of any one of claims 16 to 18, further comprising:

20. The computer-implemented method of any one of claims 16 to 19, further comprising: refining calibration of the plurality of cameras via external seismic sensor data.

Citation Information

Patent Citations

  • Method and device for processing earthquake observation data

    JP1999006878A

  • Video image shake detecting device, method and program thereof, and camera video image selecting device

    JP2005037273A

  • Facility disaster monitoring device and facility disaster monitoring method

    JP2009002914A

  • Use of computer video cameras to detect earthquakes

    JP2013530389A

  • Monitoring controller

    JP2018096775A