Patent Description:
Currently, there are several media editing applications available to apply edit attributes (e.g., various effects/colors, artistic texture of a photo, fun stickers, etc.) on media which enhances the aesthetic of the media.

<CIT> discusses a method for applying a style to an input image to generate a stylized image. <NPL>, discusses an automatic background replacement algorithm. <CIT> discusses techniques for applying an artistic style extracted from one or more source images to one or more target images. <CIT> discusses an information processing device.

Existing media editing applications have their own set of edit attributes to choose from. Thus, when a user needs to apply similar edit attributes on a new media, the user is obliged to download the specific media editing application and follow specific steps for applying the similar edit attributes on the new media.

Also, if multiple edit attributes (e.g., effects, background blur, contrast, etc.) were applied on the media to generate a pleasing effect and the user wants to recreate the same effect on another media, then the user has to remember and perform the same steps on the desired media. This may result in the user having to perform complex editing operations. Further, the user may not able to create the similar effect on the desired media because of complex editing operations.

Further, when the user wants to recreate similar memories with existing contents received through social media, the user may not be aware of the media editing application which can create such effects on the desired media. Also, an amateur, or ordinary user, may not be technically aware of complex editing operations to be performed on the media.

In addition, the existing media editing applications enable the user to perform only limited operations, such as transferring a texture from one media to another and viewing a list of edit operations performed on the image.

The present disclosure has been made to address the above-mentioned problems and disadvantages, and to provide at least the advantages described below.

An aspect of the present disclosure is to provide a method and/or apparatus for editing a target media by transferring a compatible edit attribute(s) from a reference media to the target media.

An aspect of the present disclosure is to provide a method and/or apparatus for selecting the compatible edit attribute(s) of the reference media for editing the target media.

Various embodiments of the present disclosure are described with reference to the accompanying drawings. However, various embodiments of the present disclosure are not limited to particular embodiments, and it should be understood that modifications, equivalents, and/or alternatives of the embodiments described herein can be variously made. With regard to description of drawings, similar components may be marked by similar reference numerals.

The embodiments herein disclose methods and systems for performing editing operations on media.

An object of the embodiments is for editing a target media by transferring a compatible edit attribute(s) from a reference media to the target media.

Another object of the embodiments is to for selecting the compatible edit attribute(s) of the reference media for editing the target media.

A method according to an embodiment includes receiving a reference media and a target media, wherein the reference media includes at least one media and at least one edited portion of media. Further, the method includes identifying one or more dominant edit attributes of the reference media. Additionally, the method includes performing a compatibility check to determine compatibility of the target media with the one or more dominant edit attributes of the one or more reference media. Based on result of the compatibility check, a compatible edit attribute(s) is selected from the one or more dominant attributes of the reference media. Further, the method includes transferring the compatible edit attribute from the reference media to the target media.

<FIG> is a system <NUM> for performing editing operations on media, according to an embodiment. The system includes an electronic device <NUM>, a network <NUM> and an external source(s) <NUM>. The electronic device <NUM> can be, but is not limited to, a mobile phone, a smartphone, tablet, a phablet, a personal digital assistant (PDA), a laptop, a computer, a wearable device, an Internet of things (IoT) device, a vehicle infotainment system, a medical device, a camera or any other device which supports editing of media. Examples of the media can be, but are not limited to, an image, a video, a graphics interchange format (GIFs), an animation and so on.

The electronic device <NUM> can communicate with the external source(s) <NUM> through the network <NUM> for receiving the media. Examples of the network can be, but are not limited to, the Internet, a wired network, and a wireless network (a Wi-Fi network, a cellular network, Wi-Fi hotspot, Bluetooth™, Zigbee™, and near-field communication (NFC)). The external source(s) <NUM> may comprise the media. Examples of the external source(s) <NUM> can be, but are not limited to, an electronic device, a camera, a server, a database, cloud storage, social media, and a website. The electronic device <NUM> includes a reception unit <NUM>, a processing engine <NUM>, an edit transfer engine <NUM>, a display unit <NUM> and a storage unit <NUM>.

The reception unit <NUM> can be configured to receive at least two media from a user for performing editing operations. The at least two media may be present in the electronic device <NUM> or may be obtained from one or more external sources <NUM>. The at least two media includes a reference media (which is the media from which editing operation are copied from) and a target media (which is the media on which the editing operation is applied to). The reference media includes at least one of portion which has been edited (either previously or is being edited in real time).

The reception unit <NUM> can receive inputs from the user for initiating the editing operations on the target media. Examples of the inputs can be, but are not limited to, gestures (a gaze, an air gesture, a touch, a tap, a click, a press, a swipe, a hold, a drag and drop, and a drag), voice commands, gestures performed using a stylus pen (S-pen), device bend angle, and tap <NUM> devices (NFC/Bluetooth).

The processing engine <NUM> can be configured to process the reference media for identifying the edit classes/attributes of the reference media. The edit attributes can be, but are not limited to, texture attribute(s), effect attribute(s), template attribute(s), and selfies. Examples of the effect attribute can be pixel level changes such as, but not limited to, a broken effect, a change in temperature, a brightness, and a contrast. Examples of the template attribute can be, but are not limited to, static stickers, emojis, a fun shot, and collages. Examples of the selfies can be, but are not limited to, a face level beautification level, a slim chain, large eyes effects, and animated stickers.

The processing engine <NUM> determines dominant edit attribute(s) from the edit attributes of the reference media. After determining the dominant edit attribute(s), the processing engine <NUM> performs the compatibility check on the target media to determine a compatibility of the target media with the dominant edit attribute(s) of the reference media. Based on results of the compatibility check, the processing engine <NUM> may select compatible edit attribute(s) from the dominant edit attribute(s) based on a result of the compatibility check.

The edit transfer engine <NUM> can be configured to edit the target media by applying/transferring the compatible edit attribute(s) of the reference media on the target media. The display unit <NUM> can be configured to display the edited target media on a display screen of the electronic device <NUM>.

The storage unit <NUM> can be configured to store reference media, the target media, the dominant and compatible edit attributes of the reference media, and the edited target media. The storage unit <NUM> can be at least one of a file server, a data server, a server, a cloud, and a memory. The memory may include one or more computer-readable storage media and non-volatile storage elements, such magnetic hard discs, optical discs, floppy discs, flash memories, forms of electrically programmable memories (EPROM) or electrically erasable and programmable (EEPROM) memories. In addition, the memory may, in some examples, be considered a non-transitory storage medium. The term "non-transitory" may indicate that the storage medium is not embodied in a carrier wave or a propagated signal. However, the term "non-transitory" should not be interpreted to mean that the memory is non-movable. In some examples, the memory can be configured to store larger amounts of information than the memory. In certain examples, a non-transitory storage medium may store data that can, overtime, change (e.g., in random access memory (RAM) or cache).

<FIG> shows components of the system <NUM>, but in other embodiments, the system <NUM> may include additional components, or fewer components. Further, the labels or names of the components are used only for illustrative purposes and do not limit the scope of the embodiments. One or more components can be combined together to perform the same or a substantially similar function in the system <NUM>.

2A is a block diagram illustrating various units of the processing engine <NUM> for selecting the compatible attribute(s) of the reference media to edit the target media, according to an embodiment. The processing engine <NUM> includes an edit classifier unit <NUM>, an attribute filter unit <NUM>, a compatibility checking unit <NUM> and an attribute selection unit <NUM>.

The edit classifier unit <NUM> can be configured to determine the edit attributes of the reference media. The edit attributes can be classified into pre-defined attributes such as, but not limited to, the texture attribute, the template attribute, the effect attribute, and the selfies. The edit classifier unit <NUM> can also add all edits detected in the reference media, thereby extending attribute classification.

The edit classifier unit <NUM> may use feature extraction techniques, CNN or any other machine learning networks to identify the edit attributes of the reference media. Embodiments herein are further explained considering the CNN for identifying the edit attributes of the reference media, but it may be obvious to a person of ordinary skill in the art that any other form of feature extraction techniques can be used to identify the edit attributes. The CNN can be based on feature extraction networks such as, but not limited to, Visual Geometry Group (VGG16) neural network and Inception. Further, the CNN may include deep learning algorithms.

Upon receiving the reference media from the reception unit <NUM>, the edit classifier unit <NUM> feeds the reference media to the CNN. The CNN can analyze portions of the reference media to identify the edit attributes of the reference media, as well as at least one of the portions of the reference media.

The edit classifier unit <NUM> can be further configured to calculate probability of the edit attributes of the reference media, as well as at least one of the portions of the reference media. The edit classifier unit <NUM> may use the CNN to calculate a probability of the edit attributes. The edit classifier unit <NUM> may use a softmax function of the CNN which can represent the probability distribution over N different possible outcomes (the probability for the edit attributes).

The attribute filter unit <NUM> can be configured to determine the dominant edit attribute(s) from the edit attributes of the reference media. The attribute filter unit <NUM> analyzes the probability of the edit attributes of the reference media to determine the dominant edit attribute(s) of the reference media. For example, the attribute filter unit <NUM> determines that the texture attribute and the template attribute can be the dominant edit attributes when the probability of the texture attribute and the template attribute are the same or higher than the effect attribute. In another example, the attribute filter unit <NUM> determines that the texture attribute can be the dominant edit attribute when the probability of the texture attribute is higher than that of the template attribute and the effect attribute. In yet another example, the attribute filter unit <NUM> determines that the texture attribute, the template attribute and the effect attribute can be the dominant edit attributes when the probability of the texture attribute, the template attribute and the effect attribute are same.

The compatibility checking unit <NUM> can be configured to perform the compatibility check on the target media. The compatibility checking unit <NUM> can receive the target media from the reception unit <NUM> and process at least one portion of the target media to identify source attribute(s) of the target media. The source attribute can be, but are not limited to, texture(s), template(s), effect(s), and selfies. The compatibility checking unit <NUM> can select at least one portion of the target media for processing based on meta-data associated with the target media. The compatibility checking unit <NUM> can select portions of the target media for processing upon receiving selection inputs from the reception unit <NUM>. The selection inputs may be received from the user indicating the portions of the target image for processing.

The compatibility checking unit <NUM> compares the source attributes with the dominant edit attribute(s) of the reference media to determine a compatibility of at least one of the target media or one of the portions of the target media with the dominant edit attribute(s). Further, based on the compatibility of the target media, the compatibility checking unit <NUM> may assign a weight value to the dominant edit attribute(s). A higher weight value indicates that the target media is more compatible with the dominant edit attribute(s) of the reference media. A lower weight value indicates the target media is less compatible with the dominant edit attribute(s) of the reference media.

Consider a scenario, wherein the template attribute (i.e., face stickers) and the texture attribute are the dominant edit attributes of the reference media. The compatibility checking unit <NUM> compares the source attributes of the target media with the template attribute and the texture attribute of the reference media. Based on the comparison results, the compatibility checking unit <NUM> determines that the target media has a dominant texture and the target media does not contain the template attribute (i.e., a face for the face stickers). Thus, the compatibility checking unit <NUM> assigns a lower weight value to the template attribute and a higher weight value to the texture attribute.

The attribute selection unit <NUM> can be configured to select the compatible edit attribute(s) from the dominant edit attribute(s) of the reference media. The attribute selection unit <NUM> selects the compatible edit attribute(s) based on the weight value assigned to the dominant edit attribute(s). The compatible edit attribute can be the dominant edit attribute with which the at least one of the portions of the target media can be compatible. For example, the texture attribute and the template attribute may be determined as the dominant edit attributes of the reference media. Further, the texture attribute may have a higher weight value and the template attribute may have a lower weight value. Thus, the attribute selection unit <NUM> may select the texture attribute as the compatible edit attribute of the reference media.

Consider another example, wherein the effect attribute of the reference media is determined as the dominant edit attribute and the target media has many dark pixels. Thus, the effect attribute may be assigned with a lower weight value. In this scenario, the attribute selection unit <NUM> may not select the compatible edit attribute for editing the media as the target media because the effect attribute is determined as not compatible with the effect attribute. Thus, at least one relevant edit attribute can be identified to apply to the target media rather than performing a blind copy (i.e., a copy without a compatibility comparison) of the selected edit operations on the target media.

<FIG> shows components of the processing engine <NUM>, but in other embodiments, the processing engine <NUM> may include additional components or fewer components. Further, the labels or names of the units are used only for illustrative purposes and do not limit the scope of the embodiments. One or more units can be combined together to perform the same or a substantially similar function in the processing engine <NUM>.

<FIG> is a block diagram illustrating various units of the edit transfer engine <NUM> for applying the compatible edit attributes on the target media, according to an embodiment. The edit transfer engine <NUM> transfers the compatible edit attribute(s) from the reference media to at least one of compatible portions of the target media and compatible target media. The edit transfer engine <NUM> can receive the inputs (i.e., scrabble or irregular marking) from the user specifying the portions of the target media for which the compatible edit attributes can be applied. For example, the edit transfer engine <NUM> can apply at least one of the texture attribute, the template attribute and the effect attribute on the at least one of the portions of the target media in response to determining that at least one of the texture attribute, the template attribute and the effect attribute can be the compatible edit attribute.

The edit transfer engine <NUM> may transfer the compatible edit attribute(s) of the reference media present on a first electronic device to the target media present on the second electronic device using suitable communication techniques (such as NFC, Bluetooth, Wi-Fi, Bluetooth™ low energy (BLE)).

The edit transfer engine <NUM> includes a texture unit <NUM>, a template unit <NUM> and an effect unit <NUM>. The texture unit <NUM> is configured to apply the texture attribute of the reference media on the at least one of the portions of the target media and the entire target media. The texture unit <NUM> uses a combination of an auto encoder neural network, a texture style aligner and an auto decoder for transferring the texture attribute of the reference media to the at least one of the portions of the target media and the entire target media.

The template unit <NUM> is configured to apply the template attribute on the at least one of the portions of the target media and the entire target media. The template unit <NUM> extracts mask(s) (e.g., faces, emojis, stickers, etc.) associated with the template attribute(s) of the reference media using image segmentation methods. The template unit <NUM> matches the template attribute(s) with template(s) stored in at least one of a local template database and a cloud template database. Based on a successful match, the template unit <NUM> transfers the template attribute to the at least one of the portions of the target media and the entire target media.

The effect unit <NUM> is configured to apply the effect attribute on the at least one of the portions of the target media and the entire target media. The effect unit <NUM> may emulate and copy pixel level color changes from the reference media to the target media using a color transformation algorithm and an image filter effect algorithm.

<FIG> shows components of the edit transfer engine <NUM>, but it is to be understood that the edit transfer engine <NUM> may include additional components or fewer components. Further, the labels or names of the components are used only for illustrative purposes and do not limit the scope of the embodiments. One or more components can be combined together to perform the same or a substantially similar function in the edit transfer engine <NUM>.

<FIG> is a flowchart <NUM> illustrating a method for performing editing operations on media, according to an embodiment.

At step <NUM>, the method includes receiving, by the reception unit <NUM> of the electronic device <NUM>, the reference media and the target media. The reference media can include at least one of the portions of the media and the media which are previously edited. At step <NUM>, the method includes identifying, by the processing engine <NUM> of the electronic device <NUM>, the dominant edit attribute(s) of the reference media.

At step <NUM>, the method includes performing, by the processing engine <NUM>, the compatibility check to determine a compatibility of the target media with the dominant edit attribute(s). At step <NUM>, the method includes selecting, by the processing engine <NUM>, one or more compatible edit attribute(s) from the dominant edit attribute(s) based on a result of the compatibility check. The processing engine <NUM> selects the compatible edit attribute(s) based on the weight value assigned to the dominant edit attribute(s). The weight value is assigned to the dominant edit attribute(s) based on the result of the compatibility check.

At step <NUM>, the method includes transferring, by the edit transfer engine <NUM>, the compatible edit attribute(s) from the reference media to the target media. The edit transfer engine <NUM> can transfer the compatible edit attribute(s) to specific portions of the target media. The specific portions can be the portions of the target image which are compatible with the dominant edit attribute(s) of the reference media.

The various actions, acts, blocks, or steps in the method and flowchart <NUM> may be performed in the order presented, in a different order or simultaneously. Further, some of the actions, acts, blocks, or steps may be omitted, added, modified, or skipped without departing from the scope of the disclosure.

<FIG> is a flowchart 400a illustrating a method for selecting the dominant edit attribute(s) of the reference media, according to an embodiment.

At step <NUM>, the method includes determining, by the processing engine <NUM>, the edit attributes of the at least one of the reference media or at least one of the portions of the reference media. At step <NUM>, the method includes calculating, by the processing engine <NUM>, a probability of the edit attributes of the at least one of the reference media or at least one of the portions of the reference media. The processing engine <NUM> uses the CNN to determine the edit attributes and the probability of the edit attributes.

At step <NUM>, the method includes analyzing, by the processing engine <NUM>, the probability of the edit attributes to determine the dominant edit attribute(s) of the reference media. The processing engine <NUM> selects the edit attributes having the higher probability as the dominant edit attribute(s) of the reference media.

The various actions, acts, blocks, or steps in the method and the flowchart 400a may be performed in the order presented, in a different order or simultaneously. Further, some of the actions, acts, blocks, or steps may be omitted, added, modified, or skipped without departing from the scope of the disclosure.

<FIG> is a flowchart 400b illustrating a method for performing a compatibility check on the target media, according to an embodiment.

At step <NUM>, the method includes processing, by the processing engine <NUM>, at least one portion of the target media to determine the source attribute(s). At step <NUM>, the method includes comparing, by the processing engine <NUM>, the source attribute(s) with the dominant edit attribute(s) of the target media to determine the compatibility of the at least one of the portions of the target media with the dominant edit attribute(s).

At step <NUM>, the method includes assigning, by the processing engine <NUM>, a weight value to the dominant edit attribute(s) based on the compatibility of the at least one of the portions of the target media and the target media with the dominant edit attribute(s). The processing engine <NUM> assigns a higher weight value to the dominant edit attribute(s) when the at least one of the portions of the target media are compatible with the dominant edit attribute. The processing engine <NUM> assigns a lower weight value to the dominant edit attribute(s) when the at least one of the portions of the target media are not compatible with the dominant edit attribute(s).

The various actions, acts, blocks, or steps in the method and the flowchart 400b may be performed in the order presented, in a different order or simultaneously. Further, some of the actions, acts, blocks, or steps may be omitted, added, modified, or skipped without departing from the scope of the disclosure.

<FIG> is a block diagram illustrating various modules of the electronic device <NUM> for performing editing operations on the target media, according to an embodiment. Embodiments of the present disclosure allow the electronic device <NUM> to edit the media by intelligently selecting the compatible edit attributes of the reference media. The electronic device <NUM> may include the processing engine <NUM> to select the compatible edit attributes of the reference media and the edit transfer engine <NUM> to transfer the compatible edit attribute(s) of the reference media to the target media.

As illustrated in <FIG>, the edit classifier unit <NUM> of the processing engine <NUM> receives the reference media/pre-edited media and the target media. The edit classifier unit <NUM> determines the edit attributes (i.e., the texture attribute, the template attribute and the effect attribute) present in at least one of the reference media and the portions of the reference media. Further, the edit classifier unit <NUM> calculates the probability of the edit attributes.

The attribute filter unit <NUM> of the processing engine <NUM> may determine the dominant edit attribute(s) from the edit attributes of the reference media based on the calculated probability of the edit attributes. The attribute filter unit <NUM> further may perform a compatibility check on the target media to determine the compatibility of the target media with the dominant edit attribute(s). Based on results of the compatibility check, the attribute filter unit <NUM> may determine the compatible edit attribute(s) from the dominant edit attribute(s).

The edit transfer engine <NUM> may transfer the compatible edit attribute(s) from the reference media to the target media. Thus, only relevant edit attributes may be applied to the target media.

<FIG> illustrates the edit classifier unit <NUM> including the CNN for determining the edit attributes of the reference media, according to an embodiment. The edit classifier unit <NUM> may use the CNN for determining the edit attributes of the reference media (or the target media). The edit classifier unit <NUM> provides the reference media to the CNN. The CNN may include a feature learning map and a classification part. The CNN may learn the edit attributes/features of the reference media using a series convolutional layer (Conv) and activation map layer (Relu). Further, the CNN may classify the edit attributes into pre-defined attributes such as, the texture attribute, the template attribute, and the effect attribute using a fully-connected (FC) layer and a softmax classifier. In addition, the CNN may calculate the probability of the edit attributes of the reference media.

<FIG> illustrates the processing engine <NUM> and the edit transfer engine <NUM> for selecting and applying the compatible edit attributes of the reference media on the target media, according to an embodiment. The edit classifier unit <NUM> of the processing engine <NUM> provides information about the probability of the edit attributes of the reference media and the target media to the attribute filter unit <NUM>.

Upon receiving information about the probability of the edit attributes, the attribute filter unit <NUM> may determine the dominant edit attribute(s). The dominant edit attribute(s) can be at least one of the texture attribute, the template attribute and the effect attribute. After determining the dominant edit attributes, the compatibility checking unit <NUM> may check the compatibility of the target media with respect to the dominant edit attribute(s). Based on the results of the compatibility check, the attribute selection unit <NUM> may select the compatible edit attribute(s) from the dominant edit attributes. The compatible edit attributes can be at least one of the texture attribute, the template attribute and the effect attribute.

For example, if the compatible edit attribute is determined as the texture attribute, then the texture unit <NUM> applies the texture attribute on the target media. If the compatible edit attribute is determined as the template attribute, then the template unit <NUM> applies the template attribute on the target media. Similarly, if the compatible attribute is determined as the effect attribute, then the effect unit <NUM> can apply the effect attribute on the target media.

<FIG> illustrates the texture unit <NUM> for transferring a texture attribute from the reference media to the target media, according to an embodiment. The texture unit <NUM> may use the auto-encoder neural network, the texture style aligner and the auto-decoder to apply the texture attribute of the reference media on the target media. The auto-encoder neural network and the auto-decoder may include a Conv and a Relu.

<FIG> illustrates the template unit <NUM> for transferring the template attribute from the reference media to the target media, according to an embodiment. The template unit <NUM> may use a Conv and a Relu to extract a template mask(s) of the reference media. Further, the template unit <NUM> may match the extracted template mask(s) with the template database using pattern matching method. Based on a successful matching, the template unit <NUM> may apply the extracted template mask(s) to the target media.

<FIG> illustrates the effect unit <NUM> for transferring the effect attribute from the reference media to the target media, according to an embodiment. The effect unit <NUM> may perform actions like emulating and copying pixel level color changes from the reference media to the target media using a color transformation algorithm. The effect unit can also apply an image filter effects algorithm to apply the effect attribute on the target media.

<FIG>, <FIG> and <FIG> are diagrams illustrating selections of the compatible edit attribute(s) of the reference media for editing the target media, according to various embodiments.

<FIG> is a diagram illustrating a selection of the texture attribute as the compatible edit attribute for editing the target media. As illustrated in <FIG>, the edit classifier unit <NUM> of the processing engine <NUM> receives the reference media and identifies the edit attributes of the reference media. The edit attributes can be the texture attribute, the template attribute and the effect attribute. Further, the edit classifier unit <NUM> calculates the probability of the edit attributes of the reference media. For example, the probability of the texture attribute may be <NUM>, the probability of the template attribute may be <NUM> and the probability of the effect attribute may be <NUM>. Because the texture attribute has higher probability than the template attribute and the effect attribute, the attribute filter unit <NUM> of the processing engine <NUM> selects the texture attribute as the dominant edit attribute.

Further, the compatibility checking unit <NUM> of the processing engine <NUM> may check the target media for compatibility with the texture attribute. The compatibility checking unit <NUM> may determine that the target media is compatible with the texture attribute unit. Thus, the compatibility checking unit <NUM> may assign a higher weight value to the texture attribute.

The attribute selection unit <NUM> of the processing engine <NUM> may select the texture attribute as the compatible edit attribute because the texture attribute has a higher weight value. Thus, the texture unit <NUM> of the edit transfer engine <NUM> may transfer the texture attribute from the reference media to the target media.

<FIG> is a diagram illustrating selection of the effect attribute and the template attribute as the compatible edit attributes for editing the target media. As illustrated in <FIG>, the edit classifier unit <NUM> of the processing engine <NUM> receives the reference media and identifies the edit attributes of the reference media. The edit attributes can be the texture attribute, the template attribute and the effect attribute. Further, the edit classifier unit <NUM> calculates the probability of the edit attributes of the reference media. For example, the probability of the texture attribute may be <NUM>, the probability of the template attribute may be <NUM> and the probability of the effect attribute may be <NUM>. The attribute filter unit <NUM> selects the template attribute and the effect attribute as the dominant edit attributes since the probability of the template attribute and the effect attribute are same as or higher than the texture attribute.

Further, the compatibility checking unit <NUM> of the processing engine <NUM> may check the target media for compatibility with the template attribute and the effect attribute. The compatibility checking unit <NUM> may determine that the target media is compatible with the template attribute and the effect attribute. Thus, the compatibility checking unit <NUM> may assign a higher weight value to the template attribute and the effect attribute.

The attribute selection unit <NUM> of the processing engine <NUM> may select the template attribute and the effect attribute as the compatible edit attributes based on the weight value. Thus, the template unit <NUM> and the effect unit <NUM> may transfer the template attribute and the effect attribute from the reference media to the target media respectively.

<FIG> is a diagram illustrating selection of the effect attribute as the compatible edit attribute for editing the target media. As illustrated in <FIG>, the edit classifier unit <NUM> receives the reference media and identifies the edit attributes of the reference media. The edit attributes can be the texture attribute, the template attribute and the effect attribute. Further, the edit classifier unit <NUM> calculates the probability of the edit attributes of the reference media. For example, the probability of the texture attribute may be <NUM>, the probability of the template attribute may be <NUM> and the probability of the effect attribute may be <NUM>. The attribute filter unit <NUM> selects the template attribute and the effect attribute as the dominant edit attributes since the probability of the template attribute and the effect attribute are the same as or higher than the texture attribute.

Further, the compatibility checking unit <NUM> may check the target media for compatibility with the template attribute and the effect attribute. The compatibility checking unit <NUM> may determine that the target media is compatible with the effect attribute and not compatible with the template attribute. Thus, the compatibility checking unit <NUM> may assign a higher weight value to the effect attribute and a lower weight value to the template attribute.

The attribute selection unit <NUM> may select the effect attribute as the compatible edit attribute based on the higher weight value. Thus, the effect unit <NUM> may transfer the effect attribute from the reference media to the target media.

<FIG> is a flowchart illustrating transferring of the compatible edit attributes from the reference media to the target media, according to an embodiment. As illustrated in <FIG>, at step <NUM> the processing engine <NUM> selects the reference media. At step <NUM>, the processing engine <NUM> selects the target media. At step <NUM>, the processing engine <NUM> identifies the dominant edit attributes of the reference media. At step <NUM>, the processing engine <NUM> checks whether the dominant edit attributes are clearly identifiable or not. In response to determining that the dominant edit attributes are not clearly identifiable (<NUM>: No), the processing engine <NUM> stops performing the editing operations on the target media and does not proceed to step <NUM>.

In response to determining that the dominant edit attributes are clearly identifiable (<NUM>: Yes), the processing engine <NUM> processes the target media and identifies the source attribute(s) at step <NUM>. The processing engine <NUM> may additionally compare the source attribute(s) with the dominant edit attribute(s); assign the weight value to the dominant edit attribute(s) based on the compatibility of the target media with the dominant edit attribute(s); and select the dominant edit attribute(s) as compatible edit attribute(s) based on the weight value assigned to the dominant edit attribute(s).

After selecting the compatible edit attribute(s), in step <NUM>, the edit transfer engine <NUM> transforms the compatible edit attribute from the reference media to the target media. In step <NUM>, the edited target media is displayed on the display screen of the electronic device as a frame output.

<FIG> and <FIG> are diagrams illustrating selection of the dominant edit attribute(s) of the reference media, according to various embodiments. The processing engine <NUM> may identify the dominant edit attribute(s) of the reference media using the CNN. For example, the processing engine <NUM> identifies the effect attribute (color effects) as the dominant edit attribute in the reference media as illustrated in <FIG>. Thus, only color information can be transformed to the target media.

In another example, the processing engine <NUM> identifies the effect attribute (i.e., color effects) and the template attribute as the dominant edit attributes in the reference media as illustrated in <FIG>. Thus, the effect attribute and the template attribute can be applied on the target media.

<FIG> and <FIG> are diagrams illustrating compatibility check process performed on the target media, according to an embodiment. The processing engine <NUM> may perform the compatibility check on the target media to determine the compatibility of the target media with the dominant edit attribute(s) of the reference media. As illustrated in <FIG>, the processing engine <NUM> identifies an effect attribute (i.e., add bunny ears and whiskers to faces) and a template attribute as the dominant edit attributes from the reference media. Further, the processing engine <NUM> performs the compatibility check on the target media to determine a compatibility with the effect attribute and the template attribute. Based on the compatibility check, the processing engine <NUM> determines that the target media can be compatible with the effect attribute and the target media cannot be compatible with the template attribute. Thus, the processing engine <NUM> selects the effect attribute as the compatible edit attribute which can be applied to the target media.

As illustrated in <FIG>, the processing engine <NUM> identifies a texture attribute as the dominant edit attribute of the reference media. The processing engine <NUM> checks the target media for compatibility with the texture attribute. The target media may not be compatible with the texture attribute, since the target media already has the texture attribute. The processing engine <NUM> does not select the compatible edit attribute for applying on the target media. Thus, the target media may be displayed without applying any edit attributes.

<FIG>, <FIG> are diagrams illustrating transferring of compatible edit attributes from the reference media to the target media, according to various embodiments.

<FIG> is a diagram illustrating transferring of the texture attribute from a reference image to a target image. The processing engine <NUM> identifies the artistic texture (i.e., the texture attribute) of the reference image as the compatible edit attribute. The edit transfer engine <NUM> edits the target image by applying the artistic texture of the reference image on the target image.

<FIG> is a diagram illustrating transferring of the effect attribute from the reference image to the target image. The processing engine <NUM> identifies the effect attribute (color effect) of the reference image as the compatible edit attribute. The edit transfer engine <NUM> edits the target image by applying the effect attribute (i.e., color effect) of the reference image to the target image.

<FIG> is a diagram illustrating transferring of the template attribute from the reference image to the target image. The processing engine <NUM> identifies the template attribute (i.e., stickers) of the reference image as the compatible edit attribute. The edit transfer engine <NUM> edits the target image by applying the template attribute (i.e., stickers) of the reference image to the target image.

<FIG> is a diagram illustrating controlling of a level of the compatible edit attribute(s) transferred from the reference media to the target media, according to an embodiment. The edit transfer engine <NUM> may copy the compatible edit attribute from the reference image to the target image. Once the compatible edit attribute has been copied to the target image, the display unit <NUM> may display a slider on the display screen of the electronic device. The user can use the slider to vary the level of the compatible edit attribute applied on the target image.

<FIG> and <FIG> are diagrams illustrating transferring of the compatible edit attribute(s) from the reference media only to particular portions of the target media, according to various embodiments. The edit transfer engine <NUM> may apply the compatible edit attribute to a specific region of interest (ROI)/portion in the target image or on complete image.

The edit transfer engine <NUM> can receive inputs (touching, marking, or scrabble) from the user specifying the specific ROI in the target image (alternatively, the entire target image may be designated as the ROI) for performing the edit operations. According to the inputs received from the user, the edit transfer engine <NUM> may apply the compatible edit attribute to at least one of the specific ROI(s) in the target image, such as the foreground of the target image and the background of the image as illustrated in <FIG>.

Further, the edit transfer engine <NUM> can apply the compatible edit attribute of the reference image on the specific compatible ROI in the target image, as illustrated in <FIG>.

<FIG> is a diagram illustrating storing of resultant intermediate frames while transferring the compatible edit attribute(s) from the reference media to the target media, according to an embodiment.

If one or more edit attributes are identified (for example, texture or color), the processing engine <NUM> can enable the user to choose to save and/or render every intermediate frame as a graphics interchange format (GIF) file or a video file, wherein each frame may capture each edit result. The final frame may have combined effects as illustrated in <FIG>. The user may discard or save the edited target media.

<FIG> is a diagram illustrating transferring of the compatible edit attributes from the reference media present on a first electronic device to the target media present on a second device, according to an embodiment. For example, the reference media is present on the first electronic device and the target media is present on the second electronic device. The edit transfer engine <NUM> of the first electronic device uses a communication mechanism like NFC to transfer the editing operations (e.g., compatible edit attributes) to the target media present on the second electronic device.

<FIG> is a diagram illustrating transferring of the compatible edit attributes from the reference image to a target video, according to an embodiment. The compatible edit attributes may be transferred from the reference image to the target video. The processing engine <NUM> can convert a video sequence to match the compatible edit attribute/style of the reference image. The processing engine <NUM> can receive user input indicating the edit attribute of the reference image which is required to be transferred to the target video.

<FIG> is a diagram illustrating transferring of the compatible edit attributes from the reference image to camera preview frames, according to an embodiment. As illustrated in <FIG>, the user can choose a picture having a particular style (e.g., media) from a favorite database provided by the storage unit <NUM>, where the user has already added some images as favorite images. Further, the user can select a style (e.g., the compatible edit attribute) to apply to preview frames in a camera. The edit transfer engine <NUM> may transfer the style selected by the user to the preview frames. After transferring the style to the preview frames, the preview/target image can be captured by the camera. The target image may include the user selected style.

<FIG> is a diagram illustrating selection of the reference media from the social media, according to an embodiment. The user may download multiple images from the external source(s) <NUM>, such as various social media platforms. The multiple images can be stored in the storage unit <NUM>. Further, the user may select the reference image and the target image from the multiple images for applying the edit attributes of the reference image on the target image. The processing engine <NUM> can determine the texture attribute of the reference image as the compatible edit attribute. After selecting the compatible edit attribute, the edit transfer engine <NUM> may transfer the texture attribute (e.g., the compatible edit attribute) from the reference image to the target image.

<FIG> is a diagram illustrating transferring of a face beautification attribute from the reference media to the target media, according to an embodiment. The edit transfer engine <NUM> may transfer selfies attributes from the reference image to the target image. For example, the user can select beautification applied on a face present in the reference image as the compatible edit attribute. According to the user selection, the edit transfer engine <NUM> may apply the beautification on a face(s) present in the target image as illustrated in <FIG>.

<FIG> is a diagram illustrating transferring of the compatible edit attributes from multiple reference media to the target media, according to an embodiment. The electronic device can apply different edit attributes to different portions of the target image. For example, the user can select a first reference image and a second reference image. Further, the user can select an edit attribute/style (i.e., the texture attribute) from the first reference media as a first edit attribute. The user may want to apply the first edit attribute to the background of the target image. In addition, the user can select an edit attribute (i.e., the effect attribute) from the second reference image as a second edit attribute. The user may select the second edit attribute to be applied to foreground of the target image.

According to the user selection, the edit transfer engine <NUM> can apply the first edit attribute (i.e., the texture attribute) to the background of the target image and the second edit attribute (i.e., the effect attribute) to the foreground of the target image, as illustrated in <FIG>. Thus, different edit attributes/styles can be applied to the foreground and background of the target image.

<FIG> is a diagram illustrating receiving user selected inputs for transferring compatible edit attributes from the reference media to the target media, according to an embodiment. As illustrated in <FIG>, the user can capture an image and select the captured image as the reference image. Further, the user can select one or more colors of the reference image (i.e., the effect attribute) as the edit attribute which may be applied to a subsequent image upon capturing the subsequent image. The edit transfer engine <NUM> may transform the color of the reference image (i.e., the previous image) to the image while capturing. Thus, the captured image may comprise the color effects from the previously captured image.

Different camera option(s)/mode(s) of existing camera features may be combined into user favorite mode(s)/option(s).

Simple steps to combine different media options may be provided, such as beauty faces, effects, stickers, and collages, into a one-step capture option using a reference media.

The steps and editing time may be reduced to a single step to transfer the editing operations from the reference media to the target media.

Deep learning algorithms may be utilized to select the edit attributes of the reference media and to apply the selected edit attributes to the target media.

Several applications may not be required to be installed to apply edits.

The embodiments of the present disclosure can be implemented through at least a software program running on at least one hardware device and performing network management functions to control elements. The elements shown in <FIG> and <FIG> can be at least one of a hardware device, or a combination of a hardware device and a software module.

The present disclosure describes methods and systems for performing editing operations on media. Therefore, it is understood that the scope of protection is extended to such a program, and in addition to a computer readable means having a message therein, such computer readable storage means may contain a program code means for implementation of one or more steps of the method when the program runs on a server or mobile device or any suitable programmable device.

The method may be implemented through, or together with, a software program written in very high speed integrated circuit hardware description language (VHDL) or another programming language. The software program may be implemented by one or more devices executing VHDL or several software modules being executed on at least one hardware device. The device can be any kind of portable device that can be programmed. The device may also include a hardware means, such as an application specific integrated circuit (ASIC), or a combination of hardware and software, such as an ASIC and a field programmable gate array (FPGA), or at least one microprocessor and at least one memory with software modules located therein. The method described herein could be implemented partly in hardware and partly in software. Alternatively, the method may be implemented on different hardware devices using a plurality of central processing units (CPUs).

Claim 1:
A computer implemented method for performing editing operations on images by an electronic device (<NUM>), the method characterized by comprising:
receiving, by a processor (<NUM>) of the electronic device, a reference image and a target image;
identifying, by the processor, a dominant edit attribute in the reference image;
performing, by the processor, a compatibility check to determine a compatibility of the target image with the dominant edit attribute;
selecting, by the processor, the dominant edit attribute based on a result of the compatibility check; and
applying, by the processor, the selected dominant edit attribute on the target image,
wherein performing the compatibility check comprises:
processing at least one portion of the target image to determine at least one source attribute;
comparing the at least one source attribute with the dominant edit attribute to determine a compatibility of the at least one portion of the target image with the at least one dominant edit attribute of the reference image; and
assigning a weight value to the at least one dominant edit attribute based on a compatibility of the at least one portion of the target image with the at least one dominant edit attribute of the reference image,
wherein the weight value is used to select the at least one compatible edit attribute of the reference image,
wherein an edit attribute is one of a texture attribute, a template attribute and an effect attribute,
wherein the processor comprises a texture unit (<NUM>), a template unit (<NUM>) and an effect unit (<NUM>),
and wherein:
the texture unit uses a combination of an auto encode neural network, a texture style aligner and an auto decoder for transferring a texture attribute of the reference image to the target image;
the template unit extracts masks associated with the template attributes of the reference image using image segmentation methods, matches the template attributes with templates stored in at least one of a local template database and a cloud template database and based on a successful match, transfers the template attribute to the target image; and
the effect unit emulates and copies pixel level color changes from the reference image to the target image using a color transformation algorithm and an image filter effect algorithm.