METHOD AND APPARATUS FOR METAL ARTIFACT REDUCTION IN INDUSTRIAL 3-DIMENSIONAL CONE BEAM COMPUTED TOMOGRAPHY
20210012544 ยท 2021-01-14
Inventors
Cpc classification
G06T11/008
PHYSICS
G06T11/005
PHYSICS
G06T7/30
PHYSICS
G06T2211/448
PHYSICS
International classification
G06T7/30
PHYSICS
Abstract
Provided is a method and apparatus for metal artifact reduction in industrial three-dimensional (3D) cone beam computed tomography (CBCT) that may align computer-aided design (CAD) data to correspond to CT data, generate registration data from the aligned CAD data, set a sinogram surgery region corresponding to a metal region based on the registration data, perform an average fill-in process on the CT data based on the registration data, update data of the sinogram surgery region based on the averaged filled-in information, and reconstruct a 3D CT image from the updated sinogram data with surgery region.
Claims
1. An operation method of an electronic device, the method comprising: preparing computed tomography (CT) data and computer-aided design (CAD) data; generating registered CAD volume data, which matches to CT volume data; and generating a CT image by updating a sinogram surgery region based on the registration data.
2. The method of claim 1, wherein the generating of the registration data comprises: adjusting a volume of the CAD data to correspond to a CT volume data; and adjusting an angle of the CAD data based on the CT data.
3. The method of claim 1, wherein the generating of the registration data comprises: obtaining registration parameters by performing a registration process on the CAD data; and generating the registered CAD data based on the registration parameters.
4. The method of claim 1, further comprising: downsampling the CAD data; and obtaining the registration parameters for the downsampled data by performing a registration process on the downsampled CAD data.
5. The method of claim 4, wherein the generating of the registration data comprises obtaining the registration parameters for the full volume data by performing the registration process on the CAD data based on the registration parameters for the downsampled data; and generating the registration data from the CAD data based on the registration parameters for the full volume data.
6. The method of claim 1, wherein the generating of the CT image comprises: setting a sinogram surgery region corresponding to a metal region based on forward projected part of the registered CAD volume data; performing an average fill-in process based on the registered CAD volume data; updating the sinogram surgery region; and reconstructing the CT image.
7. The method of claim 6, wherein the setting of the sinogram surgery region comprises: reconstructing the registration data by applying predetermined transformation parameters; extracting a metal region from the registration data; and setting the sinogram surgery region by forward projecting the extracted metal region.
8. The method of claim 6, wherein the performing of the average fill-in process comprises: segmenting the connected regions surrounding the metal region using the registration result; computing an average attenuation coefficient of the connected regions; and filling in each connected region using the average attenuation coefficients.
9. The method of claim 1, wherein the preparing of the CT data and the CAD data comprises generating the CT data and the CAD data in a format of binary volume data.
10. The method of claim 1, wherein the generating of the registration data comprises generating the registered CAD volume data from the CAD data using a particle swarm optimization (PSO) algorithm.
11. An electronic device comprising: a data preparation module configured to prepare computed tomography (CT) data and computer-aided design (CAD) data; a registration module configured to register the CAD data by aligning the CAD data to the CT data; and a module configured to generate a CT image based on the registered CAD volume data.
12. The electronic device of claim 11, wherein the registration module is further configured to adjust a CAD volume data to correspond to a volume of the CT data and to adjust an angle of the CAD data based on the CT data.
13. The electronic device of claim 11, wherein the registration module is further configured to obtain registration parameters by performing a registration process on the CAD data, and to generate the registered CAD data from the given CAD data based on the registration parameters.
14. The electronic device of claim 11, wherein the registration module is further configured to downsample the CAD data, and to obtain the registration parameters for the downsampled data by performing a registration process on the downsampled CAD data.
15. The electronic device of claim 14, wherein the registration module is further configured to obtain the registration parameters for the full volume data by performing the registration process on the CAD data based on the registration parameters for the downsampled volume data, and to generate the registered CAD data using the registration parameters obtained from the full volume data.
16. The electronic device of claim 11, wherein the module configured to generate the CT image is further configured to set a sinogram surgery region corresponding to a metal region based on the registration data, by forward projection of the registered metal region, to perform an average fill-in process based on the registration data, to update the sinogram surgery region, and to reconstruct the CT image.
17. The electronic device of claim 16, wherein the module configured to generate the CT image is further configured to reconstruct the registration data by applying predetermined transformation parameters, to extract a metal region from the registration data, and to set the sinogram surgery region to correspond to the metal region.
18. The electronic device of claim 16, wherein the module configured to generate the CT image is further configured to segment the registration data into connected regions surrounding the metal region, to compute the average attenuation coefficients of the each connected region, and to fill in each connected regions using the average attenuation coefficients.
19. The electronic device of claim 11, wherein the data preparation module is further configured to generate the CT data and the CAD data in a format of binary volume data.
20. The electronic device of claim 11, wherein the registration module is further configured to find the parameters for registering CAD volume into CT volume data using a particle swarm optimization (PSO) algorithm.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0010] These and/or other aspects, features, and advantages of the invention will become apparent and more readily appreciated from the following description of embodiments, taken in conjunction with the accompanying drawings of which:
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
DETAILED DESCRIPTION
[0021] One or more example embodiments will be described in detail with reference to the accompanying drawings. Example embodiments, however, may be embodied in various different forms, and should not be construed as being limited to only the illustrated embodiments. Rather, the illustrated embodiments are provided as examples so that this disclosure will be thorough and complete, and will fully convey the concepts of this disclosure to those skilled in the art. Accordingly, known processes, elements, and techniques, may not be described with respect to some example embodiments.
[0022] Hereinafter, example embodiments will be described with reference to the accompanying drawings.
[0023] In the industry field, computer-aided design (CAD) data is available for an in-line inspection system since most products are designed in a form of CAD data before a manufacturing process.
[0024]
[0025] Referring to
[0026] The data preparation module 110 may prepare CT data V.sub.CT and CAD data V.sub.CAD with respect to a specific object. The data preparation module 110 may remove noise in the CT data V.sub.CT and the CAD data V.sub.CAD to distinguish between the inside and the outside of an object. The data preparation module 110 may reconstruct the CT data V.sub.CT and the CAD data V.sub.CAD in a form of binary volume data by applying a threshold that is set based on a substance constituting the object. For example, the data preparation module 110 may reconstruct the CT data V.sub.CT using an anisotropic diffusion and shock filter.
[0027] The registration module 120 may transform the CAD data V.sub.CAD for registration into the CT data V.sub.CT. That is, the registration module 120 may generate the registered CAD data based on the CT data V.sub.CT. For example, the registration module 120 may generate registered CAD volume data from the original CAD data V.sub.CAD using a particle swarm optimization (PSO) algorithm. To this end, the registration module 120 may align the CAD data V.sub.CAD to correspond to the CT data V.sub.CT. The registration module 120 may generate the registration data from the CAD data V.sub.CAD. Here, the registration module 120 may adjust a volume and an angle of the CAD data V.sub.CAD. For example, the registration module 120 may adjust the volume of the CAD data V.sub.CAD to correspond to a volume of the CT data V.sub.CT and may adjust the angle of the CAD data V.sub.CAD based on the CT data V.sub.CT.
[0028] According to an example embodiment, the registration module 120 may generate the registered CAD volume data based on an initial criterion. In detail, the registration module 120 may perform a registration process on the CAD data V.sub.CAD and may obtain registration parameters as the initial criterion. Through this, the registration module 120 may generate the registered CAD data from the original CAD data V.sub.CAD based on the obtained registration parameters.
[0029] According to another example embodiment, the registration module 120 may generate registered CAD volume data from the original CAD data V.sub.CAD by performing a registration process according to two levels. In detail, the registration module 120 may obtain the registration parameters by downsampling the CAD volume data V.sub.CAD and by performing the registration process on the downsampled CAD data. Also, the registration module 120 may obtain the registered CAD volume data by performing the registration process on the original CAD data V.sub.CAD based on the registration parameters from the downsampled volume data. Through this, the registration module 120 may generate the registered CAD volume data from the original CAD data V.sub.CAD based on the registration parameters for the full volume data.
[0030] The CT image generation module 130 may correct sinogram data by using the registered CAD volume data and may remove metal artifacts from the corrected sinogram data. Referring to
[0031] The surgery setting module 210 may set a sinogram surgery region based on the metal region in the registered CAD data. In detail, the surgery setting module 210 may generate the registered volume data by applying predetermined transformation parameters. The surgery setting module 210 may extract a metal region from the registered CAD data. Through this, the surgery setting module 210 may set the sinogram surgery region to correspond to the forward projected region of the metal region.
[0032] The average fill-in module 220 may perform an average fill-in process based on the registered CAD data. In detail, the average fill-in module 220 may segment the connected regions surrounding the metal region. The average fill-in module 220 may compute an average attenuation coefficient of each connected region. Through this, the average fill-in module 220 may fill in the metal region from the registration data using the average attenuation coefficient.
[0033] The sinogram update module 230 may update the sinogram surgery region using the modified CT data with the registered CAD data. That is, the sinogram update module 230 may update the sinogram surgery region using the registration data.
[0034] The CT image reconstruction module 240 may reconstruct a CT image using the updated sinogram surgery region. That is, the CT image reconstruction module 240 may reconstruct the CT image using the updated sinogram surgery region.
[0035] The electronic device 100 according to example embodiments may include the data preparation module 110 configured to prepare CT data and CAD data, the registration module 120 configured to generate the registered CAD volume data from the original CAD data based on the aligned CAD volume data, which matches to CT volume data, and the CT image generation module 130 configured to correct a sinogram from the registered CAD data and reconstruct an image based on the corrected sinogram.
[0036] According to example embodiments, the registration module 120 may be configured to adjust a size of CAD data to correspond to a volume of CT data and to adjust an angle of the CAD data based on the CT data.
[0037] According to example embodiments, the registration module 120 may be configured to obtain registration parameters by performing a registration process on CAD data and to generate the registered CAD data.
[0038] According to example embodiments, the registration module 120 may be configured to obtain the registration parameters by downsampling the CAD volume data and by performing a registration process on the downsampled CAD volume data.
[0039] According to example embodiments, the registration module 120 may be configured to obtain the registration parameters for the full volume CAD data by performing a registration process on CAD data based on the registration parameters of the downsampled CAD volume data and to generate the registered CAD volume data from the original CAD data based on the registration parameters for the full volume of CAD data.
[0040] According to example embodiments, the CT image generation module 130 may be configured to set a sinogram surgery region corresponding to a metal region based on registration data, to perform an average fill-in process based on the registration data, to update the sinogram surgery region, and to reconstruct a 3D CT image.
[0041] According to example embodiments, the CT image generation module 130 may be configured to obtain the registered data by applying a predetermined transformation parameters, and to set a surgery region that is influenced by a metal in a sinogram by extracting a metal region and by forward projecting the metal region based on the registered CAD data.
[0042] According to example embodiments, the CT image generation module 130 may be configured to segment the connected region surrounding the metal region, to compute an average attenuation coefficient of the connected regions, and to fill in the metal region using the average attenuation coefficient.
[0043] According to example embodiments, the data preparation module 110 may be configured to reconstruct CT data and CAD data in a format of binary volume data.
[0044] According to example embodiments, the registration module 120 may be configured to generate registration data of CAD data using a PSO algorithm.
[0045]
[0046] Referring to
[0047] In operation 320, the electronic device 100 may generate registration data from the CAD data V.sub.CAD based on the CT data V.sub.CT. The registration module 120 may generate the registration data by transforming the CAD data V.sub.CAD for registration into the CT data V.sub.CT. For example, the registration module 120 may generate registration data from CAD data V.sub.CAD using a PSO algorithm.
[0048] According to an example embodiment, the registration module 120 may generate the registered CAD data from the original CAD data V.sub.CAD based on an initial criterion. In detail, the registration module 120 may perform a registration process on the CAD data V.sub.CAD and may obtain registration parameters as the initial criterion. Through this, the registration module 120 may generate the registered CAD data of the original CAD data V.sub.CAD based on the registration parameters.
[0049] According to another example embodiment, the registration module 120 may generate the registered CAD data from the original CAD data V.sub.CAD by performing a registration process according to two levels. In detail, the registration module 120 may obtain the registration parameters by downsampling the original CAD data and by performing the registration process on the downsampled CAD data. Also, the registration module 120 may obtain the registration parameters for the full volume CAD data by performing the registration process on the original CAD data V.sub.CAD based on the registration parameters for the downsampled CAD data. Through this, the registration module 120 may generate registration data from the CAD data V.sub.CAD based on the registration parameters for the full volume CAD data.
[0050]
[0051] Referring to
[0052] For example, for a 3D binary volume object V, an inertia tensor I may be defined by the moment of inertia I.sub.xx, I.sub.yy, and I.sub.zz and products of inertia I.sub.xy, I.sub.yz, and I.sub.xz as given by the following Equation 1. Here, the moment of inertia I.sub.xx, I.sub.yy, and I.sub.zz and the products of inertia I.sub.xy, I.sub.yz, and I.sub.xz may be defined by the following Equation 2. Here, since the inertia tensor I is symmetric, eigenvectors v.sub.1, v.sub.2, and v.sub.3 of I may be principal axes of the 3D binary volume object V by a principal axis theorem. Here, eigenvalues .sub.1, .sub.2, and .sub.3 may satisfy relation with the eigenvectors v.sub.1, v.sub.2, and v.sub.3 as represented by the following Equation 3.
[0053] Based on Equation 3, for two 3D binary volume objects V.sub.1 and V.sub.2, a scaling ratio r between the two 3D binary volume objects V.sub.1 and V.sub.2 may be driven as represented by the following Equation 4. The scaling ratio r between the objects V.sub.1 and V.sub.2 may be represented as a scaling constant r.
[0054] Using matrices Q.sub.CAD and Q.sub.CT of principal axes and the scaling constant r, a transformation matrix Q for registration of CT data V.sub.CT and CAD data V.sub.CAD, that is, to align the CAD data V.sub.CAD to correspond to the CT data V.sub.CT may be obtained as represented by the following Equation 5. Accordingly, using the transformation matrix Q, the registration module 120 may align the CAD data V.sub.CAD as represented by the following Equation 6, which may lead to generating the aligned CAD data V.sub.aiign. Here, for registration into the CT data V.sub.CT as shown in
Q=rQ.sub.CTQ.sub.CAD.sup.1=rQ.sub.CTQ.sub.CAD.sup.T[Equation 5]
V.sub.align=QV.sub.CAD[Equation 6]
[0055] In operation 420, the electronic device 100 may generate the registered CAD data from the original CAD data V.sub.CAD. For example, the registration module 120 may generate the registered CAD data from the original CAD data V.sub.CAD. Here, the registration module 120 may obtain registration parameters by performing a registration process on the original CAD data V.sub.CAD. The registration module 120 may perform the registration process using a PSO algorithm. The registration module 120 may generate the registered CAD data from the original CAD data V.sub.CAD based on the registration parameters. For example, referring to
[0056] For example, an energy function may be defined in advance as represented by the following Equation 7. Here, denotes a level set function of which a zero level set is a boundary of an object in an image I, i.e., the CAD data V.sub.CAD, and c.sub.1 and c.sub.2 are constants, for example, scalar values. By minimizing Equation 7 in terms of the constants c.sub.1 and c.sub.2, the values may become the average intensities of the image I in regions in which is positive and negative, respectively. Here, since the image I is a 3D image, an Euler rotation of
[0057] For example, the registration module 120 may obtain registration parameters according to an algorithm represented as the following Table 1. The registration module 120 may obtain , (a, b, c), and (n.sub.1, n.sub.2, n.sub.3) as the registration parameters based on the acquired . Here, denotes a rotation angle with respect to a rotation axis n, (a, b, c) denotes a transformation parameters, for example, a translation factor along x, y, and z axes, respectively, and (n.sub.1, n.sub.2, n.sub.3) denotes a unit normal vector of the rotation axis. Through this, the registration module 120 may generate the registered CAD volume data from the original CAD data V.sub.CAD based on the registration parameters. For example, the registration module 120 may adjust a volume size and an angle of the CAD data V.sub.CAD based on the registration parameters.
TABLE-US-00001 TABLE 1 Alogorithm Finding a minimizer of E 1: An initial level set for aligned prior is given. 2: for k = 1, 2, 3, . . . 3: Update c.sub.1, c.sub.2 using
[0058]
[0059] Referring to
[0060] For example, the registration module 120 may perform the primary registration process using an algorithm represented as the following Table 2. The registration module 120 may downsample the CAD data V.sub.CAD. Here, when the CAD data V.sub.CAD has a size of (nnn), a size of the downsampled CAD data V.sub.CAD may be (n/2n/2n/2). The registration module 120 may obtain the registration parameters for the downsampled CAD volume by performing a registration process on the downsampled CAD data. Here, the registration parameters for the downsampled data may be acquired using the values given in the following Table 3.
[0061] In operation 620, the electronic device 100 may perform a secondary high resolution registration. The registration module 120 may align the original CAD volume data based on the registration parameters obtained from the primary registration process as shown in
[0062] For example, the registration module 120 may perform the secondary high resolution registration process according to an algorithm represented by the following Table 2. The registration module 120 may obtain the registration parameters for the full volume CAD data by performing the registration process on the original CAD data V.sub.CAD based on registration parameters for the downsampled CAD data. Here, the registration parameters for the full volume CAD data may be obtained using the values given in the following Table 3. Through this, the registration module 120 may generate registered CAD data for the full volume CAD data, that is, final registration data from the CAD data V.sub.CAD based on the registration parameters for the full volume CAD data.
TABLE-US-00002 TABLE 2 Algorithm Two resolution approach 1: Initial binary data , are given. 2: Find the alignment matrix Q using , 3: Generate downsampled data , , from , 4: <Step 1> Apply Algorithm 2 to Q with . 5: <Step 2> Apply Algorithm 2 to Q with using the resulting parameters of <Step 1> as initial parameters. , : n n n data , : n n n data
TABLE-US-00003 TABLE 3 (a, b, c) n = (n.sub.1, n.sub.2, n.sub.3) <Step1> initial seeds (v.sub.1, centerV.sub. b, c).sup.n1| < 10.sup.5 10.sup.4 <Step 2> initial seeds resulting parameter of <Step 1> range of seed 1 (0.2, 0.2, 0.2) (0.05, 0.05, distribution 0.05) number of seed 5 10 7 inner iter. stop |.sup.n |(a, b, c).sup.n (a, (n.sup.n, n.sup.n1) < criteria .sup.n1| < 10.sup.5 b, c).sup.n1| < 10.sup.5 10.sup.4
indicates data missing or illegible when filed
[0063] Accordingly, the registration data may be registered for the CT data V.sub.CT, as represented by the following Table 4. The registration module 120 may align the original CAD data V.sub.CAD to correspond to the CT data V.sub.CT and accordingly, the CAD data V.sub.CAD may be registered into the CT data V.sub.CT. Also, the registration module 120 may generate the registration data from the CAD data V.sub.CAD and accordingly, the registration data may be further registered into the CT data Vc-r.
TABLE-US-00004 TABLE 4 Initial state Alignment result Registration result L2 relative error 1.6761 0.3498 0.1687 Absolute relative 2.8092 0.1224 0.0285 error MSE 0.3684 0.0161 0.0037 PSNR 4.3364 17.9447 24.2781 SSIM 0.5010 0.9389 0.9732
[0064] In operation 330, the electronic device 100 may generate a CT image. The CT image generation module 130 may remove metal artifacts using the registration data.
[0065]
[0066] Referring to
f.sup.(0)=.sup.1S.sup.(0)[Equation 9]
[0067] In Equation 9, S.sup.(0) denotes initial sinogram data, .sup.1 denotes an operator that represents reconstruction of an image, and f.sup.(0) denotes an image reconstructed from initial sinogram in which metal artifacts appear.
f.sup.(0): M,Extract M from f.sup.(0)[Equation 10]
In Equation 10, M denotes a metal region.
=supp{
.sub.M}[Equation 11]
[0068] In Equation 11, supp{.sub.M} denotes a sinogram surgery region.
[0069] Through operations 920, 930, and 940, the electronic device 100 may perform an iterative update on the registration data and the sinogram surgery region. To this end, the update of the sinogram surgery region may be defined as given by the following Equation 12.
For n=1,2,3, . . . , (do while S.sup.(n)S.sup.(n-1)/S.sup.(n-1)<Tol)[Equation 12]
[0070] In operation 920, the electronic device 100 may perform an average fill-in process based on the registration data. The average fill-in module 220 may segment the connected regions surrounding the metal region. The average fill-in module 220 may compute an average attenuation coefficient, for example, an average intensity value from the connection regions. Through this, the average fill-in module 220 may fill in the metal region of the registration data using the average attenuation coefficient.
{tilde over (f)}.sup.(n-1)=v.sup.(n-1).sub.CM+f.sup.(n-1)(1.sub.CM)[Equation 13]
[0071] In Equation 13, f.sup.(n-1) denotes an (n1)-th reconstructed CT image, C denotes connected regions, and v.sup.(n-1) denotes the average attenuation coefficient.
[0072] In operation 930, the electronic device 100 may update the sinogram surgery region. The sinogram update module 230 may update the sinogram surgery region for the sinogram, which is obtained by forward projection of the CT volume data, obtained from the average fill-in process using the registered CAD data as represented by the following Equation 14. That is, the sinogram update module 230 may correct the sinogram surgery region based on the registration data.
{tilde over (S)}.sup.(n-1)={tilde over (f)}.sup.(n-1)
S.sup.(n)={tilde over (S)}.sup.(n-1).sub.M+S.sup.(0)(1.sub.M)[Equation 14]
[0073] In operation 940, the electronic device 100 may reconstruct a CT image from the updated sinogram surgery region. The CT image reconstruction module 240 may reconstruct the CT image using the updated sinogram surgery region as represented by the following Equation 15. That is, the CT image reconstruction module 240 may reconstruct the CT image based on the updated sinogram surgery region. For example, the CT image reconstruction module 240 may obtain the reconstructed CT image as shown in
f.sup.(n)=.sup.1S.sup.(n)[Equation 15]
[0074] An operation method of the electronic device 100 according to example embodiments may include an operation of preparing CT data and CAD data, an operation of generating registration data from the CAD data by aligning the CAD data, and an operation of correcting sinogram data.
[0075] According to example embodiments, the operation of generating CAD data may include an operation of adjusting a volume size of the CAD data to correspond to a volume of the CT data and adjusting an angle of the CAD data based on the CT data.
[0076] According to example embodiments, the operation of generating registered CAD data may include an operation of obtaining registration parameters by performing a registration process on the original CAD data and an operation of generating the registration data from the original CAD data.
[0077] According to example embodiments, the operation method of the electronic device 100 may further include an operation of downsampling the CAD data and an operation of obtaining the registration parameters for the downsampled CAD volume by performing the registration process on the downsampled CAD data.
[0078] According to example embodiments, the operation of generating registration data may further include an operation of obtaining registration parameters for the full volume CAD data by performing the registration process on the CAD data based on the registration parameters for the downsampled CAD data and an operation of generating the registered CAD data from the original CAD data based on the registration parameters for the full volume CAD data.
[0079] According to example embodiments, the operation of correcting the sinogram data may include an operation of setting a sinogram surgery region corresponding to a metal region based on the registered CAD data, an operation of performing an average fill-in process based on the registration data, an operation of updating the sinogram surgery region, and an operation of reconstructing the CT image.
[0080] According to example embodiments, the operation of setting the sinogram surgery region may include an operation of generating the registered CAD volume data by applying predetermined transformation parameters, an operation of extracting the metal region from the registration data, an operation of setting the sinogram surgery region to correspond to the metal region.
[0081] According to example embodiments, the operation of performing the average fill-in process may include an operation of segmenting the registration data into connected regions surrounding the metal region, an operation of computing an average attenuation coefficient from the connected regions, and an operation of filling in the metal region using the average attenuation coefficient.
[0082] According to example embodiments, the operation of preparing CT data and CAD data may include an operation of generating the CT data and the CAD data in a format of binary volume data.
[0083] According to example embodiments, the operation of generating registration data may include an operation of generating the registered CAD data from the original CAD data using a PSO algorithm.
[0084] According to example embodiments, the electronic device 100 may remove metal artifacts in industrial 3D CT using CAD data. According to example embodiments, the electronic device 100 may remove artifacts from registration data as shown in
[0085]
[0086] Referring to
[0087] Referring to
[0088] Comparing
[0089] Herein, an electronic device according to the example embodiments may be various types of devices. The electronic device may include, for example, a portable communication device (e.g., a smartphone), a computer apparatus, a portable multimedia device, a portable medical device, a camera, a wearable device, and home appliances. The electronic device is not limited to the aforementioned devices.
[0090] The example embodiments and the terms used herein are not construed to limit the disclosure to specific example embodiments and may be understood to include various modifications, equivalents, and/or substitutions. Like reference numerals refer to like elements throughout. As used herein, the singular forms a, an, and the, are intended to include the plural forms as well, unless the context clearly indicates otherwise. Herein, the expressions, A or B, at least one of A and/or B, A, B, or C, at least one of A, B, and/or C, and the like may include any possible combinations of listed items. Terms first, second, third, etc., are used to describe various components and the components should not be limited by the terms. The terms are simply used to distinguish one component from another component. When a component, for example, a first component, is described to be (functionally or communicatively) connected to or accessed to another component, for example, a second component, the component may be directly connected to the other component or may be connected through still another component, for example, a third component.
[0091] The term module used herein may include a unit configured as hardware, software, or firmware, and may be interchangeably used with the terms logic, logic block, part, circuit, etc. The module may be an integrally configured part, a minimum unit that performs at least function, or a portion thereof. For example, the module may be configured as an application-specific integrated circuit (ASIC).
[0092] The example embodiments may be configured as software including one or more instructions stored in a non-transitory computer-readable storage medium by a machine, for example, the electronic device 100. For example, a processor of a device may call at least one instruction among the one or more instructions stored in the storage medium and may execute the instruction. This enables the device to perform at least one function in response to the called at least one instruction. The one or more instructions may be executed by a code created by a compiler or an interpreter. The computer-readable storage medium may be provided in a form of a non-transitory storage medium. Here, non-transitory simply indicates that the storage medium is a tangible device and a signal (e.g., electromagnetic wave) is not included. This term does not distinguish a case in which data is semi-permanently stored in the storage medium and a case in which data is temporarily stored.
[0093] According to the example embodiments, each of the components (e.g., module or program) may include a singular object or a plurality of objects. According to the example embodiments, at least one of the components or operations may be omitted. Alternatively, at least one another component or operation may be added. Alternatively or additionally, a plurality of components (e.g., module or program) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the components in the same or similar manner as it is performed by a corresponding component before integration. According to the example embodiments, operations performed by a module, a program, or another component may be performed in sequential, parallel, iterative, or heuristic manner. Alternatively, at least one of the operations may be performed in different sequence or omitted. Alternatively, at least one another operation may be added.
[0094] While this disclosure includes specific example embodiments, it will be apparent to one of ordinary skill in the art that various alterations and modifications in form and details may be made in these example embodiments without departing from the spirit and scope of the claims and their equivalents. For example, suitable results may be achieved if the described techniques are performed in a different order, and/or if components in a described system, architecture, device, or circuit are combined in a different manner, and/or replaced or supplemented by other components or their equivalents. Therefore, the scope of the disclosure is defined not by the detailed description, but by the claims and their equivalents, and all variations within the scope of the claims and their equivalents are to be construed as being included in the disclosure.