Real—time stereo 3D and autostereoscopic 3D video and image editing

Information

  • Patent Grant
  • 10158847
  • Patent Number
    10,158,847
  • Date Filed
    Thursday, June 18, 2015
    10 years ago
  • Date Issued
    Tuesday, December 18, 2018
    6 years ago
  • CPC
    • H04N13/271
    • H04N13/128
    • H04N13/261
  • Field of Search
    • US
    • 345 419000
    • 715 716000
    • 715 719000
    • 715 720000
    • 715 722000
    • 715 723000
    • CPC
    • H04N13/0271
    • H04N13/0018
    • H04N13/0022
    • H04N13/026
    • H04N13/0285
    • H04N13/0289
    • H04N13/0292
  • International Classifications
    • H04N13/271
    • H04N13/128
    • H04N13/261
Abstract
A system for creating a three dimensional image using a processor that includes receiving a digital two dimensional input image and the processor processing the two dimensional input image to determine a depth map further based upon receiving input from a user interface. The processor generates a three dimensional image based upon the two dimensional input image and the depth map.
Description
BACKGROUND OF THE INVENTION

Two dimensional video content, such as obtained with a video camera having a single aperture, is often either projected onto a display screen for viewing or viewed on a display designed for presenting two dimensional content. Over time, the resolution of displays has tended to increase, from standard television interlaced content resolution (e.g., 480i), to high definition television content (e.g., 1080i), to 4K definition television content (4K UHD), and even to even higher definition television content (e.g., 8K UHD). Such increases in video resolution technology only provide for limited increases in the apparent image quality to the viewer. Accordingly, the viewer is only immersed in the video experience to a limited extent.


To increase the immersive experience of the viewer it is desirable to effectively convert two dimensional image content into three dimensional image content, which is thereafter displayed on a suitable display for viewing three dimensional image content. The perception of three dimensional content may involve a third dimension of depth, which may be perceived in a form of binocular disparity by the human visual system. Since the left and the right eyes of the viewer are at different positions, each perceives a slightly different view of a field of view. The human brain may then reconstruct the depth information from these different views to perceive a three dimensional view. To emulate this phenomenon, a three dimensional display may display two or more slightly different images of each scene in a manner that presents each of the views to a different eye of the viewer. A variety of different display technologies may be used, such as for example, anaglyph three dimensional system, polarized three dimensional system, active shutter three dimensional system, head mounted stereoscopic display system, and auto stereoscopic display system.


As three dimensional display systems become more readily prevalent the desire for suitable three dimensional content to present on such displays increases. One way to generate three dimensional content is using three dimensional computer generated graphics. While such content is suitable for being displayed, the amount of desirable such three dimensional computer generated content is limited. Another way to generate there dimensional content is using three dimensional video camera systems. Likewise, while such video camera content is suitable for being displayed, the amount of desirable such three dimensional content is likewise limited. A preferable technique to generate three dimensional content is using the vast amounts of available two dimensional content and converting the two dimensional content into three dimensional content. While such conversion of two dimensional content (2D) to three dimensional content (3D) conversation is desirable, the techniques are complicated and labor intensive.


The foregoing and other objectives, features, and advantages of the invention may be more readily understood upon consideration of the following detailed description of the invention, taken in conjunction with the accompanying drawings.





BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS


FIG. 1 illustrates an exemplary two dimension to three dimension image conversion process.



FIG. 2 illustrates an exemplary 2D to 3D image conversion system.



FIG. 3 illustrates an interface for an image conversion system.



FIG. 4 illustrates an exemplary system display.



FIG. 5 illustrates an exemplary transport control.



FIG. 6 illustrates an exemplary import interface.



FIG. 7 illustrates an exemplary export interface.



FIG. 8 illustrates an exemplary operations menu.



FIG. 9 illustrates an exemplary representation of a temporal video timeline with key frames.



FIG. 10 illustrates exemplary automatic generation of varying the depth map and/or rendering process.



FIG. 11 illustrates an exemplary set of linked executable processes associated with a key frame.



FIGS. 12A-12D illustrates exemplary three dimensional controls.



FIG. 13 illustrates an exemplary display with 2D and 3D regions.



FIG. 14 illustrates an exemplary display with 2D and 3D regions.



FIG. 15 illustrates an exemplary display with 2D and 3D regions.



FIG. 16 illustrates an exemplary display with spatial 2D and 3D regions.



FIG. 17 illustrates exemplary sliders to modify the 3D effects of the image.



FIG. 18 illustrates exemplary control codes.



FIG. 19 illustrates an exemplary artifact suppression interface.



FIG. 20 illustrates an exemplary an attenuation technique for image content.



FIG. 21 illustrates an exemplary 2D to 3D conversion process for 2D content and 3D content.





DETAILED DESCRIPTION OF PREFERRED EMBODIMENT

One technique to achieve two dimensional (2D) to three dimensional (3D) conversion is using a modified time difference technique. The modified time difference technique converts 2D images to 3D images by selecting images that would be a stereo-pair according to the detected motions of objects in the input sequential images. This technique may, if desired, be based upon motion vector information available in the video or otherwise determined.


Another technique to achieve two dimensional (2D) to three dimensional (3D) conversion is using a computed image depth technique. The 3D images are generated based upon the characteristics of each 2D image. The characteristics of the image that may be used, include for example, the contrast of different regions of the image, the sharpness of different regions of the image, and the chrominance of different regions of the image. The sharpness, contrast, and chrominance values of each area of the input image may be determined. The sharpness relates to the high frequency content of the luminance signal of the input image. The contrast relates to a medium frequency content of the luminance signal of the input image. The chrominance relates the hue and the tone content of the color signal of the input image. Adjacent areas that have close color may be grouped together according to their chrominance values. The image depth may be computed using these characteristics and/or other characteristics, as desired. For example, generally near positioned objects have higher sharpness and higher contrast than far positioned objects and the background image. Thus, the sharpness and contrast may be inversely proportional to the distance. These values may likewise be weighted based upon their spatial location within the image. Other techniques may likewise be used to achieve a 2D to 3D conversion of an input image, including motion compensation, if desired. Referring to FIG. 1, with a suitable depth map from the 2D to 3D conversion process, a 3D image generation process may be used to generate the 3D images based upon the image depth map.


Completely automatic 2D to 3D conversion processes typically result in sub-optimal three dimensional image content and is preferably modified or otherwise controlled by a user in some manner to improve the resulting three dimensional image content. Referring to FIG. 2, a computer system 90 may be used by a user to modify the depth parameters (e.g., depth map and/or 3D generation process) for the rendered three dimensional content. The computer system may include a two dimensional display 100, a general purpose computing system 110, a storage system 120, a two dimensional to three dimensional image (2D-3D) conversion system 130, and a three dimensional display 140.


The video content may be stored on the storage system 120, available from a network 150, or otherwise, and processed by the computing system 110. The user may use the display 100 as a user interface 160 for selecting three dimensional control parameters for the video content. The control parameters may be used to modify the 2D to 3D conversion process. The computing system may provide the 2D video content and/or control parameters 160 for the 2D to 3D conversion system 130, as described in detail later. The 2D-3D conversion system 130 then processes the 2D video content, based at least in part on the control parameters 160 provided (if any), to generate 3D video content. Preferably the 2D video is provided together with the control parameters 160 from the computing system 110 to the conversion system 130. For example, (1) the video content may be provided as a single video stream where the left and right images are contained in a single video stream, and/or (2) the video content may be provided as two separate video streams with a full video stream for the left eye's content and a full video stream for the right eye's content. The 3D video content, as a result of the conversion system 130, is rendered on the three dimensional display 140 so that the user may observe the effects of the control parameters 160 in combination with the 2D to 3D conversion 130. The user may modify the control parameters 160, such as by modifying selections on the user interface 160, for the video content until suitable 3D images are rendered on the three dimensional display 140. The resulting three dimensional content 170 from the 2D-3D conversion system 130 may be provided to the computing system 110, which may be stored in a three dimensional video format (e.g., Dolby 3D, XpanD 3D, Panavision 3D, MasterImage 3D, IMAX 3D), for subsequent rendering on a three dimensional display. The 2D-3D conversion 130 is preferably an external converter to the computing system 110. Alternatively, the 2D-3D conversion 130 may be an add-on hardware device, such as a processing device on a PCI card maintained within in the computing system 110. Alternatively, the 2D-3D conversion process may be performed by a processing device within the computing system 110, such as for example, a graphics card. Alternatively, the 2D-3D conversion process may be performed by a program running on the computer system 110. Alternatively, the 3D display 140 and the 2D display 100 may be replaced by a single 3D display. As it may be observed, the system may be used to modify the two dimensional content using control parameters in a manner suitable to improve the three dimensional representation of the image content.


It is desirable to include a suitable user interface 160 that facilitates the user to efficiently and effectively adjust the conversion of the 2D video content to the 3D video content. To achieve this conversion, it was determined that the 2D to 3D conversion for video segments of the video content that have relatively similar content tend to have sufficiently similar control parameters to achieve desirable results. A key frame detection system may be used to process the video stream to automatically identify a set of key frames within the video stream. A key frame may be representative of a series of frames of a video stream, such as a scene or clip of video stream. By way of example, the key frame detection may be based upon a histogram of the video content, where a sufficient difference between adjacent histograms of video frames, may be used to indicate a key frame. In other cases, it is desirable for the user to manually identify each of the key frames. In this manner, the video content between adjacent key frames tends to be sufficiently similar that an automatic 2D to 3D conversion coupled with control parameters tends to provide sufficient 3D image quality for a segment or clip, where the key frame is the first frame (or any suitable frame(s)) of a video segment having sufficiently similar content.


Referring to FIG. 3, the user interface 160 may include many different functions simultaneously displayed on the interface in a manner that provides for efficient modification of the 2D to 3D conversion process. An operations section 200 contains controls and displays specific to the operation being performed. A main menu 210 contains controls for files, for operations, for a view selector, and for a help menu. An operations selector 220 allows the user to select input, output, and setup operations, and indicates which operations the system is currently set to. For example, these dialogs may also be accessed through the main menu under operations. A system display 230 shows the CPU performance, the memory performance, the buffer level, the progress bars for input and export operations, the video, the audio, the reference, and disk parameters, as well as the video standard the system is set to. A view section 240 is used to display the VGA monitor, vector scope, wave form monitor, RGB wave form monitor, histogram, clip list, thumb view, and log/output window, depending on what is selected in a view selector or in the main menu under view. The view selector 250 allows the user to select what will be displayed in the view section. A transport controls and display 260 provides “real time” display of time code location, standard, time code type, transport state, secondary time code information, as well as transport controls for playback and cueing and audio meters.


Referring to FIG. 4, the system display 230 may include a cpu display 410, a memory usage meter 420, a buffer usage meter 430, an import progress meter 440, an export progress meter 450, a video input status display 460, a video standard status display 470, a channel drop down menu 480, an audio input status display 490, a reference input status display 492, and a disk status display 494. The cpu display 410 and checkbox 412 displays a usage level meter 414 for the processor (CPU). The checkbox 412 enables the usage level meter 414 when checked and disables it when de-checked. The memory usage meter 420 displays a usage level meter 424 for the memory (RAM). A checkbox 422 enables the usage level meter 424 when checked and disables it off when de-checked. The buffer usage meter 430 displays a usage level meter 434 for the buffer. A checkbox 432 enables the usage level meter 434 when checked and disables it when de-checked. The import progress meter 440 and export progress meter 450 displays the progress of import and export operations, respectively. The Vid In status display 460 indicates the status of the video input based on the color the label Vid In. The video standard status display 470 indicates the video standard the system is currently set to. The channel drop down menu 480 indicates the channel. Selecting the channel drop down menu 480 indicates the available channels in the system and allows the user to select between them. The Aud In status 490 indicates the status of the audio input based on the color the label Aud In. The Ref In status display 492 indicates the status of the timing reference input based on the color the label Ref In. The disk status display 494 indicates the status of the disk throughput based on the color the label disk.


Referring to FIG. 5, the transport controls 260 may include a variety of different features to control the presentation of the video, such as play, stop, pause, fast forward, etc. A multitude of other transport related items may be included, such as for example, auxiliary information associated with the video, LTC information, VITC information, current time code information, video display information (NTSC, PAL, etc.), control types, 5 second reverse selection, 1 frame reverse selection, stop selection, 1 frame forward selection, 5 seconds forward selection, audio meter, jog/shuttle controller selection, go to selection, timeline/clip/external mode selections, jog/shuttle controller selection, transport state (play, stop pause, etc.), fast reverse play selection, reverse play selection, pause selection, play selection, fast forward selection, and/or loop selection.


Referring to FIG. 6, an import interface provides a multitude of suitable selections for importing media. The import interface includes a clip details selection 610, a position field selection 615 (active when Add to Time Line checkbox is checked) to select a time code location of where to place the media, a start field selection 620 which trims frames from the start of the import, an end field selection 625 that trims frames from the end of the import, a clip field selection 630 permits the selection to be named, a picon field selection 635 which is a small image of a frame, an add to time line checkbox 640 activates the position field 615 of where the clip is added to the timeline, an import single checkbox 645 imports the selected media as a single frame, a convert media checkbox 650 activates the system settings checkbox 655 and permits the specification of how the media is converted during the import operation, a file type drop down menu 660 selects the type of file to create with the conversion, a compression drop down menu 665 selects the compression for the file, an import selection 670 begins the importing process, a bit depth drop down menu 675 selects the compression for the file type, a cancel selection 680 exports the import interface, and the system settings checkbox 655 becomes active when the convert media checkbox 650 is checked the conversion is done with the same file type, compression, and bit depth the system is currently set to.


Referring to FIG. 7, an export selection from the main menu permits the exporting of the current timeline. The exporting may have several options, such as for example, where to save the file, the type of export data list (EDL) desired (e.g., CMX, Grass Valley, Sony, Avid, Final Cut Pro, Flex), the file type, the compression setting, the bit depth, the range to be exported, and/or the translation desired. A new profile may be created, such as MediaReactor Profile window. The profile includes a description, a file type, a codec selection, a width of frame, a height of frame, a bit depth of video, a data rate of video, a key frame of video, a quality of video, and audio settings such as separate audio track from the video option, audio only option, dual mono option, sample rate, bits/sample, quality, audio filter settings, and blend fields.


Referring to FIG. 8, the operation menu 220 may include a variety of options. One of the options may include Add File selection 810 which opens a browser so that the user can search for a file to add to the Import Media menu, and thus added to the clip list and timeline. Another set of options may include an input selection set of options 820, output selection set of options 830, and a setup selection 840.


Referring to FIG. 9, a video may be represented by a temporal timeline 900 displayed in the user interface 160. Within the timeline 900, a series of key frames 910A-910E may be identified on the timeline 900. At each of the key frames 910, the system may associate a set of control parameters that are provided to the conversion system 130. The control parameters are maintained by the conversion system 130 and applied to each frame of the subsequent video until subsequently modified by the system 110, which is typically at the next subsequent key frame. In some cases, the control parameters may be applied to previous frame, if desired. In some cases, the control parameters are only applied for a limited duration or number of frames. In this manner, the conversion system 130 converts the two dimensional image content into three dimensional image content, where the system 110 provides control parameters to modify the parameters of the conversion system 130. In some cases, the control parameters for a set of frames may be provided together with a key frame at the start of the set of frames. The control parameters may be provided as a separate data stream (such as in XML format), a data stream provided together with the set of frames of the video (such as an auxiliary stream), and/or imbedded in the video frames itself such as control parameters encoded within the pixels of the last line of each key frame. With this technique for the characterization of the video content, in a segment by segment manner, sufficient control for an efficient 2D to 3D conversion process is enabled.


Referring to FIG. 10, it may be desirable to automatically vary the depth map and/or rendering process between adjacent key frames in some defined manner so that the user does not have to manually adjust such control parameters in a manual manner, which tends to be time consuming. One technique for such automatically varying the depth map and/or rendering process is using a step process 1010. Another technique for such automatically varying the depth map and/or rendering process is using a linear process 1020. Another technique for such automatically varying the depth map and/or rendering process is using a log process 1030. Another technique for such automatically varying the depth map and/or rendering process is using an inverse log process 1040. In general, any suitable function may be used to automatically varying the depth map and/or rendering process between adjacent key frames. Also, the suitable function may be used to automatically vary the depth map and/or rendering process between any pair of frames of the video.


Referring to FIG. 11, in addition to providing control parameters associated with key frames to the 2D to 3D conversion process 130, the system may also include specialized functionality associated with the key frames. The specialized functionality may include one or more executable functions associated with one or more key frames. The executable function may include, for example, three dimensional text titles, motion blur, depth of moving objects, path of blur, length of blur, depth of field adjustment, fire, snow, smoke, explosions, etc. These executable functions, if desired, may be dependent on the temporal spacing between adjacent key frames and/or the number of frames between adjacent key frames. In this manner, the executable functions are modified in accordance with the key frame information. Further, the executable functions may be dependent on the three dimensional content of the video content. By way of example, a fire may be included in the converted video content by the 2D to 3D video converter together with the length of the fire being determined based upon the temporal duration of the clip and/or and the fire is spatially included within the clip based upon the three dimensional characteristics. Also, the specialized functionality may be associated with any one or more frames of the video. Also, the specialized functionality may be associated with one or more clips of the video between any suitable frames.


Referring to FIG. 12A, a timeline 1200 may include three dimensional controls 1210. One of the three dimensional controls 1210 may include a dynamic range control 1220. The dynamic range control 1220 selects the overall depth volume of the three dimensional environment. For example, a shallow dynamic range limits the 3D range to render relatively small 3D effects. For example, a deep dynamic range expands the 3D range to include the capability of rendering relatively large 3D effects. This dynamic range may be visualized as the potential three dimensional depth 1250 of an image 1240 behind and/or in front of the display 1230.


Another of the three dimensional controls 1210 may include a zero plane position 1260. The zero plane position 1260 may be considered to be the position of the image 1240 that is aligned with the display screen 1230. For example, a small zero plane value would tend to render most of the images 1240 to appear as being to the rear of the display 1230. For example, a large zero plane value would tend to render most of the images 1240 to appear as being in the front of the display 1230. Typically, the zero plane is selected to be at the two dimensional focus of the image content. The zero plane position 1260 may likewise be used to render a substantial portion of the image content in front of the display 1230 which provides a “pop out” of the image content.


Another of the three dimensional controls 1210 may include a segmentation break 1270 which defines a depth position 1272 in the three dimensional image space. The depth position 1272 may be considered another depth plane. Around this depth position 1272 other effects may be efficiently made on the image content. For example, the depth position 1272 may be positioned in a region behind foreground images and in front of the background image. Further, a plurality of depth positions 1272 may be selected, if desired. Further, the depth position 1272 may be a range of depths, with the effects occurring on either side of the range of depths. In this manner, a range of depths may remain unchanged with effects occurring on either side of the range of depths. In addition, the effects may extend the entire range from the depth position 1272 in one or both directions and/or may extend a limited range from the depth position 172 in one or both directions (such as to one or more “stop positions”).


Referring also to FIG. 12B, another of the three dimensional controls 1210 may include a segmentation step 1280 which operates in conjunction with the segmentation break 1270. The segmentation step 1280 operates to move the three dimensional content away from the segmentation break 1270. In this manner, by increasing the segmentation step 1280, the user may selectively move objects away from the segmentation break 1270. For example, with the segmentation break 1270 positioned in a region behind foreground images and in front of the background image, the foreground images may be brought forward while the background image may be moved backwards by adjusting the segmentation step 1280. If desired, a first segmentation step may operate in a forward direction relative to the segmentation break 1270 and a second segmentation step may operate in a backwards direction relative to the segmentation break 1270. In this manner, the user may selectively move the background backwards and selectively move the foreground forward by different amounts, including zero. In addition, the segmentation step may be applied between one or more segmentation breaks, if there are multiple segmentation breaks for a particular key frame. Further, the segmentation break 1270 may be a range of depths, with the effects occurring on either side of the range of depths. In this manner, a range of depths may remain unchanged with effects occurring on either side of the range of depths. In addition, the effects may extend the entire range from the segmentation break 1270 in one or both directions and/or may extend a limited range from the segmentation break 1270 in one or both directions (such as to one or more “stop positions”).


Referring also to FIG. 12C, another of the three dimensional controls 1210 may include a segmentation scale 1290 which operates in conjunction with the segmentation break 1270. The segmentation scale 1290 operates to stretch the three dimensional content away from the segmentation break 1270 toward the front. In this manner, by increasing the segmentation scale 1290, the user may selectively stretch objects away from the segmentation break 1270 toward the front. For example, with the segmentation break 1270 positioned in a region behind foreground images and in front of the background image, the foreground images may be stretched forward while the background image remains stationary by adjusting the segmentation stretch 1290. If desired, a first segmentation scale may operate in a forward direction relative to the segmentation break 1270 and a second segmentation scale may operate in a backwards direction relative to the segmentation break 1270. In this manner, the user may selectively stretch the background backwards and selectively stretch the foreground forward by different amounts, including zero. In addition, the segmentation scale may be applied between one or more segmentation breaks, if there are multiple segmentation breaks for a particular key frame.


Referring to FIG. 12D, the segmentation step may operate in combination with the segmentation scale relative to the segmentation break. Also, the segmentation step and segmentation scale may be applied between one or more segmentation breaks.


Referring to FIG. 13, one of the three dimensional controls may include two dimensional (2D) and three dimensional (3D) spatial segmentation. Portions of the image content 1310 displayed on the three dimensional display 140, such as words and tiling, are preferably presented to a user as two dimensional content. Other portions of the image content 1320, such as city scenes, are preferably presented to a user as three dimensional content. Accordingly, it is desirable to include a spatial selector to define a spatial region 1310 of the image as being desirable to be rendered as two dimensional content and another spatial region 1320 as being desirable to be rendered as three dimensional content.


Referring to FIG. 14, another of the three dimensional controls may include segmentation of portions of the image content 1420 displayed on the three dimensional display 140, such as words and tiling, being preferably presented to a user as two dimensional content. Other portions of the image content 1410, such as city scenes, are preferably presented to a user as three dimensional content. Accordingly, it is desirable to include a spatial selector to define a spatial region 1410 of the image as being desirable to be rendered as three dimensional content and another spatial region 1420 as being desirable to be rendered as two dimensional content.


Referring to FIG. 15, another of the three dimensional controls may include segmentation of one or more portions of the image content displayed on a three display are preferably presented to a user as two dimensional content and one or more other portions of the image content preferably presented to the user as three dimensional content. The background portions of the image content may be selectively set to be displayed as either two dimensional content or three dimensional content.


Referring to FIG. 16, one of the three dimensional controls may include one or more two dimensional (2D) spatial segmentations and one or more three dimensional (3D) spatial segmentations that includes a portion of the three dimensional depth. Portions of the image content 1610 defined within the three dimensional bounding box displayed on the three dimensional display 140 are preferably presented to a user as two dimensional content. Other image content that is forward and/or rearward to the bounding box 1610 are displayed as three dimensional content. Other portions of the image content 1620 defined with the three dimensional bounding box displayed on the three dimensional display 140 are preferably presented to a user as three dimensional content. Other image content that is forward and/or rearward to the bounding box 1620 are displayed as two dimensional content. Accordingly, it is desirable to include a spatial selector with depth controls to define one or more spatial regions to be rendered as two dimensional content and one or more spatial regions to be rendered as three dimensional content. The non-selected regions of the image may be two dimensional or three dimensional, as desired.


Referring to FIG. 17, it is desirable to modify the 3D effects by modifying one region of the image relative to others. A slider 1710 may be used to increase the 3D depth effects at the lower region of the display relative to the higher region of the display. A slider 1720 may be used to increase the 3D depth effects at the higher region of the display relative to the lower region of the display. A slider 1730 may be used to increase the 3D depth effects at the left region of the display relative to the right region of the display. A slider 1740 may be used to increase the 3D depth effects at the right region of the display relative to the left region of the display. In addition, others sliders may also effectively tilt the 3D plane in any desirable direction. Further, the tilting of the 3D plane may be non-linear, as desired.


Referring to FIG. 18, there may be a variety of different control codes provided between the computer system and the 2D to 3D conversion system that provide modification of the conversion process from 2D to 3D. For example, one bit may be used to select the eye swapping 1800, with a default of 0 for no swapping. For example, one bit may be used for a background tilt 1802, with a default of 1 for background tilt enabled. For example, 4 bits may be used for a depth map estimating technique 1804, with a default of 0000 for the default technique. For example, 3 bits may be used for a segmentation technique 1806, with a default of 000 for the step technique. For example, 1 bit may be used for a control code location within the image frame 1808, with a default of 0 for inside the visible screen portion of the image. For example, 1 bit may be used for a 3D conversion 1810, with a default of 1 for enable conversion. For example, 3 bits may be used for a segmentation scale value 1812, with a default of 000 of a scale factor of 1.0. For example, 8 bits may be used for a zero plane position 1814, with a default of 60. For example, 6 bits may be used for a dynamic range adjustment 1816, with a default of 10. For example, 8 bits may be used for a segmentation breakpoint 1818, with a default of 00. For example, 5 bits may be used for a segmentation step size 1820, with a default of 00. For example, 3 bits may be used for a control code hiding technique, with a default of 001.


Even with advanced 2D to 3D conversion techniques, the determination of the three dimensional image content tends to have some aspects of the image located at an undesirable depth within the image. For example, one undesirable effect may be depth spiking, usually toward the viewer, which is the result of the depth techniques trying to resolve a location when there is a significant visual feature intensity with high brightness and/or high saturation that is dramatically different than the surrounding background. For example, the three dimensional location of a table lamp that should be positioned on a table may be inappropriately located at a location behind the table. While such a misplaced locations may be readily apparent to the user, it is desirable to include tools accessible from the interface to effectively select objects in some manner so that those objects may be relocated as a more appropriate image depth.


Referring to FIG. 19, an artifact suppression feature may be selected for an associated key frame (or any suitable frame(s) of the video) to assist with the depth estimation by selecting a significant visual feature in the interface window. After the significant visual feature is selected the depth engine of the 2D to 3D conversion process is modified as a result so that generally the selected significant visual feature has a modified depth in the image. The modified 2D to 3D conversion process may be maintained from a selected key frame until a subsequent key frame. In some embodiments, the modified 2D to 3D conversion process may be maintained for a plurality of frames of the video, from a first frame to an end frame. In some embodiments, the modified 2D to 3D conversion process may be maintained until turned off, and thus remains active for the remaining video sequence.


The artifact suppression feature may include a right eye/left eye swap feature 1910 where the image presented to the eyes are switched. This tends to be useful when the video scene is back lighted which can cause the depth map to invert to some extent. If this is the case, this swapping of the eyes is readily performed in an efficient manner and may result in a sufficiently high 3D image quality.


The artifact suppression feature may include an artifact color 1 selection 1920, which enables a first set of selectors 1930. The first selector 1930 includes an intensity selector 1940. The intensity selector 1940 may select a range of intensities within the image, from a lower value 1942 to a higher value 1944. In this manner, those pixels (or groups of pixels) within the image that contain values within the range of intensity values are selected. In addition, those pixels that are selected may be highlighted in some manner on the display so that they can be readily identified. Accordingly, if it is desirable to select a bright object, a bright intensity range may be selected that corresponds with the object of interest and adjusted until the object of interest is sufficiently discriminated from the non-objects of interest in the image.


The first selector 1930 includes a hue selector 1950. The hue selector 1950 may select a range of within the image, from a lower value 1952 to a higher value 1954. In this manner, those pixels (or groups of pixels) within the image that contain values within the range of hue values are selected. In addition, those pixels that are selected may be highlighted in some manner on the display so that they can be readily identified. Accordingly, if it is desirable to select an object with a particular range of hues, a hue range may be selected that corresponds with the object of interest and adjusted until the object of interest is sufficiently discriminated from the non-objects of interest in the image.


The first selector 1930 includes a saturation selector 1960. The saturation selector 1960 may select a range of within the image, from a lower value 1962 to a higher value 1964. In this manner, those pixels (or groups of pixels) within the image that contain values within the range of saturation values are selected. In addition, those pixels that are selected may be highlighted in some manner on the display so that they can be readily identified. Accordingly, if it is desirable to select an object with a particular range of saturation, a saturation range may be selected that corresponds with the object of interest and adjusted until the object of interest is sufficiently discriminated from the non-objects of interest in the image.


A depth offset 1965 may be used to select the offset of the selected region of the image, such as offset toward the rear or an offset toward the front. Other selectors may be used, as desired, to further discriminate aspects of the image. The combination of the selectors 1940, 1950, 1960 may be used in combination with one another to provide object discrimination.


An attention selector 1955 may be used to select the attenuation of the selection region of the image, such as an attention toward the rear or an attention toward the front. The attention in effect modifies the 2D to 3D conversion process for the identified image characteristics, such as a modification of the depth map and/or a modification of the generation process, to select how much of the selected image characteristics is changed in depth. In this manner, the effect may be subtle to move the depth of the image characteristics in a manner this is more visually pleasing than simply reassigning the absolute depth of such image characteristics.


Referring to FIG. 20, the attention may be a non-linear process, if desired. The selected attenuation modifies the mapping of the intensity of the source pixels to the intensity of pixels to the depth engine of the 2D to 3D conversion process. By way of example, a portion of the mapping may be a pair of substantially linear processes. The threshold may be used to control the beginning intensity of source pixels where attention starts to occur, if desired, and the attention selects the amount of intensity attenuation applied to pixels with intensity above the threshold. The intensity of the source pixels may be a combination of luminance and saturation of the pixels, if desired. The intensity of the output may be applied to both the luminance and saturation of a pixel, which is provided to the 2D to 3D conversion process.


In many cases, it is desirable to select a region of the image which enlarges that region of the image so that an eye dropper selector may be used to select samples of that region. The samples of the region (one or more pixels) may be used to provide initial intensity 1940, hue 1950, and/or attenuation 1960 ranges. In this manner, the user may more readily distinguish suitable ranges for the desired image characteristics.


The artifact suppression feature may include an artifact color 2 selection 1970, which enables a second set of selectors 1980, which are similar to the first set of selectors. The artifact color 2 selection 1970 may be used to further refine the selection within the first set of selectors 1930 and/or may be used to select another set of image content in addition to the first set of selectors 1930. Additional artifact color selections may be included, as desired. A depth offset 1990 may be used to select the offset of the selected region of the image as a result of the artifact color 21970 selector, such as offset toward the rear or an offset toward the front. Also, an attenuation selector 1995 may likewise be used.


Other controls may be provided for the modification of the 2D to 3D conversion process, such as for example, layers, masks, brushes, curves, and/or levels.


Referring to FIG. 21, the 2D to 3D conversion process 130 may receive the 2D image content and the control parameters 160. Often it is desirable to align the 2D to 3D conversion process of a scene, such as the scene of a flat field terminating with a large cliff, with a 3D model (e.g., a wireframe 3D model) of a vehicle driving in a flat direction and then virtually falling off a cliff. It is difficult to align the falling of the vehicle defined by the 3D model with the 2D to 3D converted image content. To make the alignment of the 3D model with the 2D to 3D conversion it is desirable for the 2D to 3D conversion process 130 to also receive a 3D model 165. Preferably the 2D images are provided together with the 3D model so that both 3D images are rendered together at the same time, preferably in real-time. The 3D model is rendered together with the 2D to 3D conversion process (which may be based upon the control parameters) so that the user may view the interaction of the two distinction 3D image content. If the interaction is not as desired, the 3D model may be modified and/or the 2D to 3D conversion process may be modified, until such interaction is as desired.


In another embodiment, the system may include a plurality of different tracks for the video. For example, the first track may relate to modifications of the video related to depth settings, such as for 2D to 3D conversion. For example, the second track may relate to modifications of the video related to color grading of the video content. If desired, the color gradating may be further dependent on the 2D to 3D conversion. For example, the third track may relate to modifications of the video related to color perception of the video content. If desired, the color perception may be further dependent on the 2D to 3D conversion process. For example, the fourth track may relate to modifications associated with the video content synthesizing smell. If desired, the synthesized smell may be further dependent on the 2D to 3D conversion process. For example, the fifth track may relate to modifications of the video related to a fourth dimension related to the video content, such as movement of a chair in which a viewer would be sitting in. If desired, the fourth dimension may be further dependent on the 2D to 3D conversion process.


If desired, the control codes may be in the form of an event list associated with one or more tracks. Each of the events may be associated with a particular location of the timeline, such that upon reaching that location during viewing of the video the event that is indicated is undertaken. For example, some events may include reading control parameters for the 2D to 3D conversion process, some events may include processing executable processes, some events may identify one or more keyframes, etc.


The terms and expressions which have been employed in the foregoing specification are used therein as terms of description and not of limitation, and there is no intention, in the use of such terms and expressions, of excluding equivalents of the features shown and described or portions thereof, it being recognized that the scope of the invention is defined and limited only by the claims which follow.

Claims
  • 1. A method for creating a three dimensional image using a processor comprising: (a) receiving a digital two dimensional input image;(b) said processor processing said two dimensional input image to determine a depth map further based upon receiving input from a user interface, where said input from said user interface defines at least one first region of said two dimensional input image that is to be rendered as a two dimensional region;(c) said processor generating a three dimensional image for at least one second region of said two dimensional input image based upon said two dimensional input image and said depth map, and said processor generating a two dimensional image for said at least one first region of said two dimensional input image that is to be rendered as said two dimensional region based upon said two dimensional input image, where (i) said three dimensional image for said at least one second region of said two dimensional input image and (ii) said two dimensional image for said at least one first region of said two dimensional input image that is to be rendered as said two dimensional region, are non-overlapping with one another;(d) at least one of: (i) wherein a display selectively presents within said user interfaced (a) CPU performance; (b) memory performance; (c) buffer level; (d) progress of input; (e) progress of export; and (f) storage parameters; and(ii) wherein a display selectively presents within said user interface at least a group import selections of (a) clip details selection; (b) position field selection; (c) start field selection; (d) end field selection; (e)picon field selection; (f) import single frame selection; (g) import video clip selection; (h) compression selection; and (i) cancel import selection.
  • 2. The method of claim 1 wherein said depth map is determined based upon control parameters received from said user input.
  • 3. The method of claim 1 further comprising receiving a video stream that includes a series of said two dimensional input images and automatically determining a set of key frames within said video stream representative of a set of segments of said two dimensional input images and automatically applying the same control parameters used to determine said depth map to a first segment of said set of segments associated with a first one of said key frames and to a second segment of said set of segments associated with a second one of said key frames.
  • 4. The method of claim 3 further comprising a display presenting a representation of said video stream within said user interface that further identifies said first and second one of said key frames.
  • 5. The method of claim 4 wherein said control parameters applied to said first and second segments automatically varies said depth map.
  • 6. The method of claim 5 wherein said automatically varied depth map is linear variation.
  • 7. The method of claim 5 wherein said automatically varied depth map is a segmentation step.
  • 8. The method of claim 5 wherein said automatically varied depth map is log variation.
  • 9. The method of claim 5 wherein said automatically varied depth map is an inverse log variation.
  • 10. The method of claim 3 further comprising at least one executable function associated with each of said first and second key frames that modifies aid first and second segments based upon said respective at least one executable function.
  • 11. The method of claim 10, wherein said executable function is a group including (a) three dimensional text titles; (b) motion blur; (c) path of blur; (d) length of blur; and (e) depth of field.
  • 12. The method of claim 1 wherein said depth map is determined based upon receiving input from an operations section of said user interface that includes controls and displays information on said user interface specific to the operation being performed.
  • 13. The method of claim 12 wherein said operations section includes an operations selector that receives a selection of that comprises input, output, and setup.
  • 14. The method of claim 13 wherein said operations selector indicates which operations it is currently set to.
  • 15. The method of claim 1 wherein a display selectively presents within said user interface at least (a) play; (b) stop; (c) pause; (d) fast forward; (e) LTC information; (f) VITC information; (g) current time code information; (h) video display information; (i) fast reverse; and (j) loop.
  • 16. The method of claim 1 wherein a display selectively presents within said user interface at least a group of export selections of (a) file saving location; (b) type of export data list; (c) file type; (d) compression setting; (e) bit depth; (f) range; (g) translation.
  • 17. The method of claim 16 wherein said display selectively presents within said user interface at least a group of profile selections of (a) file type; (b) codec selection; (c) width of frame; (d) height of frame; (e) bit depth; (f) data rate; (g) key frame; (h) quality; and (i) audio settings.
  • 18. The method of claim 1 further comprising receiving a video stream that includes a series of said two dimensional input images and determining a set of key frames within said video stream representative of a set of segments of said two dimensional input images and applying control parameters to a first segment of said set of segments associated with a first one of said key frames based upon a set of adjustments received from said user interface, wherein a first one of said set of adjustments includes a dynamic range control that selects an overall depth volume of said three dimensional image.
  • 19. The method of claim 18 wherein a second one of said set of adjustments includes a zero plane position within said overall depth volume.
  • 20. The method of claim 19 wherein a third one of said set of adjustments includes a segmentation break which defines another depth position within said overall depth volume which results in a modified said three dimensional image relative to said segmentation break.
  • 21. The method of claim 20 wherein a fourth one of said set of adjustments includes a segmentation step which operates in conjunction with said segmentation break to move three dimensional content away from said segmentation break.
  • 22. The method of claim 21 wherein a fifth one of said set of adjustments includes a segmentation scale which operates in conjunction with said segmentation break to stretch three dimensional content away from said segmentation break.
  • 23. The method of claim 1 further comprising receiving from said user interface a segmentation of said two dimensional image for at least one region to be rendered in two dimensions and at least one region to be rendered as said three dimensional image.
  • 24. The method of claim 23 further comprising receiving from said user interface a plurality of regions to be rendered in as said three dimensional image.
  • 25. The method of claim 24 wherein said user interface selects a first set of control parameters for rendering one of said plurality of regions as said three dimensional image and a second set of control parameters for rendering another one of said plurality of regions as said three dimensional image, where said first set of control parameters are different from said second set of control parameters in the amount of depth of field.
  • 26. The method of claim 1 further comprising receiving from said user interface a segmentation of said two dimensional image for said first region and modifying said generating said three dimensional image based upon said two dimensional input image and said depth map based upon said segmentation.
  • 27. The method of claim 1 further comprising receiving from said user interface a right eye and left eye swap of said determine said depth map.
  • 28. The method of claim 1 further comprising receiving from said user interface an artifact suppression that includes an intensity selector that selects a range of intensities and modifying said generating said three dimensional image based upon said two dimensional input image and said depth map based upon said range of intensities.
  • 29. The method of claim 1 further comprising receiving from said user interface an artifact suppression that includes a hue selector that selects a range of hues and modifying said generating said three dimensional image based upon said two dimensional input image and said depth map based upon said range of hues.
  • 30. The method of claim 1 further comprising receiving from said user interface an artifact suppression that includes a saturation selector that selects a range of saturations and modifying said generating said three dimensional image based upon said two dimensional input image and said depth map based upon said range of saturations.
  • 31. The method of claim 1 further comprising receiving from said user interface an artifact suppression that includes a depth selector that selects a depth offset based upon a selected region and modifying said generating said three dimensional image based upon said two dimensional input image and said depth map based upon said depth offset.
  • 32. The method of claim 1 further comprising receiving from said user interface an artifact suppression that includes an attenuation selector that selects an attenuation based upon a selected region and modifying said generating said three dimensional image based upon said two dimensional input image and said depth map based upon said attenuation.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional App. No. 62/014,269, filed Jun. 19, 2014.

US Referenced Citations (344)
Number Name Date Kind
4180313 Innuiya Dec 1979 A
4925294 Geshwind May 1990 A
5257345 Malm Oct 1993 A
5465175 Woodgate et al. Nov 1995 A
5650876 Davies et al. Jul 1997 A
5654810 Okamura et al. Aug 1997 A
5663831 Mashitani et al. Sep 1997 A
5731853 Taketomi et al. Mar 1998 A
5731899 Meyers Mar 1998 A
5751383 Yamanaka May 1998 A
5757545 Wu et al. May 1998 A
5771121 Hentschke Jun 1998 A
5781229 Zediker et al. Jul 1998 A
5808797 Bloom et al. Sep 1998 A
5822125 Meyers Oct 1998 A
5825552 Kurtz et al. Oct 1998 A
5831765 Nakayama et al. Nov 1998 A
5841579 Bloom et al. Nov 1998 A
5852512 Chikazawa Dec 1998 A
5855425 Hamagishi Jan 1999 A
5864375 Taketomi et al. Jan 1999 A
5894364 Nagatani Apr 1999 A
5896225 Chikazawa Apr 1999 A
5914805 Crowley Jun 1999 A
5943166 Hoshi et al. Aug 1999 A
5969850 Harrold et al. Oct 1999 A
5969872 Ben Oren et al. Oct 1999 A
5982553 Bloom et al. Nov 1999 A
5986804 Mashitani et al. Nov 1999 A
5991074 Nose et al. Nov 1999 A
5993003 McLaughlin Nov 1999 A
5993004 Moseley et al. Nov 1999 A
6014164 Woodgate et al. Jan 2000 A
6014187 Taketomi et al. Jan 2000 A
6020931 Bilbrey et al. Feb 2000 A
6040807 Hamagishi et al. Mar 2000 A
6048081 Richardson Apr 2000 A
6049352 Allio Apr 2000 A
6061083 Aritake et al. May 2000 A
6064424 van Berkel et al. May 2000 A
6088102 Manhart Jul 2000 A
6097554 Watkins Aug 2000 A
6101036 Bloom Aug 2000 A
6130770 Bloom Oct 2000 A
6151062 Inoguchi et al. Nov 2000 A
6157402 Torgeson Dec 2000 A
6188518 Martin Feb 2001 B1
6215579 Bloom et al. Apr 2001 B1
6215590 Okano Apr 2001 B1
6219184 Nagatani Apr 2001 B1
6224214 Martin et al. May 2001 B1
6225979 Taima May 2001 B1
6246402 Setogawa Jun 2001 B1
6254246 Tiao et al. Jul 2001 B1
6259450 Chiabrera et al. Jul 2001 B1
6266106 Murata et al. Jul 2001 B1
6266176 Anderson et al. Jul 2001 B1
6271808 Corbin Aug 2001 B1
6304263 Chiabrera et al. Oct 2001 B1
6337721 Hamagishi et al. Jan 2002 B1
6381072 Burger Apr 2002 B1
6385882 Conley et al. May 2002 B1
6388815 Collins, Jr. et al. May 2002 B1
6445406 Taniguchi et al. Sep 2002 B1
6462871 Morishima Oct 2002 B1
6481849 Martin et al. Nov 2002 B2
6525889 Collins, Jr. et al. Feb 2003 B1
6533420 Eichenlaub Mar 2003 B1
6547628 Long Apr 2003 B1
6574047 Hawver Jun 2003 B2
6608965 Tobimatsu Aug 2003 B1
6674939 Anderson et al. Jan 2004 B1
6697042 Cohen et al. Feb 2004 B1
6700701 Son et al. Mar 2004 B1
6707591 Amm Mar 2004 B2
6712480 Leung et al. Mar 2004 B1
6714173 Shinoura Mar 2004 B2
6724951 Anderson et al. Apr 2004 B1
6727866 Wang et al. Apr 2004 B2
6728023 Alioshin et al. Apr 2004 B1
6736512 Balogh May 2004 B2
6747781 Trisnadi Jun 2004 B2
6760140 Argueta-Diaz et al. Jul 2004 B1
6764875 Shook Jul 2004 B2
6766073 Anderson Jul 2004 B1
6767751 Hunter Jul 2004 B2
6775048 Starkweather et al. Aug 2004 B1
6782205 Trisnadi et al. Aug 2004 B2
6791570 Schwerdtner et al. Sep 2004 B1
6795250 Johnson et al. Sep 2004 B2
6800238 Miller Oct 2004 B1
6801354 Payne et al. Oct 2004 B1
6806997 Dueweke et al. Oct 2004 B1
6813059 Hunter et al. Nov 2004 B2
6822797 Carlisle et al. Nov 2004 B1
6829077 Maheshwari Dec 2004 B1
6829092 Amm et al. Dec 2004 B2
6829258 Carlisle et al. Dec 2004 B1
6877882 Haven et al. Apr 2005 B1
7139042 Nam et al. Nov 2006 B2
7154653 Kean et al. Dec 2006 B2
7161614 Yamashita et al. Jan 2007 B1
7168249 Starkweather et al. Jan 2007 B2
7215474 Argueta-Diaz May 2007 B2
7236238 Durresi et al. Jun 2007 B1
7271945 Hagood et al. Sep 2007 B2
7286280 Whitehead et al. Oct 2007 B2
7295264 Kim Nov 2007 B2
7298552 Redert Nov 2007 B2
7304785 Hagood et al. Dec 2007 B2
7304786 Hagood et al. Dec 2007 B2
7311607 Tedsen et al. Dec 2007 B2
7365897 Hagood et al. Apr 2008 B2
7405852 Brosnihan et al. Jul 2008 B2
7417782 Hagood et al. Aug 2008 B2
7425069 Schwerdtner et al. Sep 2008 B2
7430347 Anderson et al. Sep 2008 B2
7432878 Nayar et al. Oct 2008 B1
7450304 Sakai et al. Nov 2008 B2
7502159 Hagood, IV et al. Mar 2009 B2
7518663 Cornelissen Apr 2009 B2
7551344 Hagood et al. Jun 2009 B2
7551353 Kim et al. Jun 2009 B2
7614748 Nayar et al. Nov 2009 B2
7616368 Hagood, IV Nov 2009 B2
7619806 Hagood, IV et al. Nov 2009 B2
7630598 Anderson et al. Dec 2009 B2
7633670 Anderson et al. Dec 2009 B2
7636189 Hagood, IV et al. Dec 2009 B2
7651282 Zomet et al. Jan 2010 B2
7660499 Anderson et al. Feb 2010 B2
7675665 Hagood et al. Mar 2010 B2
7703924 Nayar Apr 2010 B2
7742016 Hagood et al. Jun 2010 B2
7746529 Hagood et al. Jun 2010 B2
7750982 Nelson et al. Jul 2010 B2
7755582 Hagood et al. Jul 2010 B2
7817045 Onderko Oct 2010 B2
7839356 Hagood et al. Nov 2010 B2
7852546 Fijol et al. Dec 2010 B2
7857700 Wilder et al. Dec 2010 B2
7864419 Cossairt et al. Jan 2011 B2
7876489 Gandhi et al. Jan 2011 B2
7889425 Connor Feb 2011 B1
7891815 Nayar et al. Feb 2011 B2
7911671 Rabb Mar 2011 B2
7927654 Hagood et al. Apr 2011 B2
7978407 Connor Jul 2011 B1
8134779 Roh et al. Mar 2012 B2
8149348 Yun et al. Apr 2012 B2
8159428 Hagood et al. Apr 2012 B2
8174632 Kim et al. May 2012 B2
8179424 Moller May 2012 B2
8189039 Hiddink et al. May 2012 B2
8242974 Yamazaki et al. Aug 2012 B2
8248560 Kim et al. Aug 2012 B2
8262274 Kim et al. Sep 2012 B2
8310442 Hagood et al. Nov 2012 B2
8363100 Lu Jan 2013 B2
8402502 Meuninck et al. Mar 2013 B2
8441602 Kim et al. May 2013 B2
8446559 Kim et al. May 2013 B2
8482496 Lewis Jul 2013 B2
8519923 Hagood, IV et al. Aug 2013 B2
8519945 Hagood et al. Aug 2013 B2
8520285 Fike, III et al. Aug 2013 B2
8526096 Steyn et al. Sep 2013 B2
8545048 Kang et al. Oct 2013 B2
8545084 Kim et al. Oct 2013 B2
8558961 Yun et al. Oct 2013 B2
8587498 Connor Nov 2013 B2
8587635 Hines et al. Nov 2013 B2
8593574 Ansari et al. Nov 2013 B2
8599463 Wu et al. Dec 2013 B2
8640182 Bedingfield, Sr. Jan 2014 B2
8651684 Mehrle Feb 2014 B2
8651726 Robinson Feb 2014 B2
8659830 Brott et al. Feb 2014 B2
8675125 Cossairt et al. Mar 2014 B2
8711062 Yamazaki et al. Apr 2014 B2
8736675 Holzbach et al. May 2014 B1
8786685 Sethna et al. Jul 2014 B1
8817082 Van Der Horst et al. Aug 2014 B2
8860790 Ericson et al. Oct 2014 B2
8891152 Fike, III et al. Nov 2014 B2
8897542 Wei Nov 2014 B2
8917441 Woodgate et al. Dec 2014 B2
8918831 Meuninck et al. Dec 2014 B2
8937767 Chang et al. Jan 2015 B2
8947385 Ma et al. Feb 2015 B2
8947497 Hines et al. Feb 2015 B2
8947511 Friedman Feb 2015 B2
8964009 Yoshida Feb 2015 B2
8988343 Fei et al. Mar 2015 B2
8994716 Malik Mar 2015 B2
9001423 Woodgate et al. Apr 2015 B2
9024927 Koyama May 2015 B2
9030522 Hines et al. May 2015 B2
9030536 King et al. May 2015 B2
9032470 Meuninck et al. May 2015 B2
9049426 Costa et al. Jun 2015 B2
9082353 Lewis et al. Jul 2015 B2
9086778 Friedman Jul 2015 B2
9087486 Gandhi et al. Jul 2015 B2
9116344 Wu et al. Aug 2015 B2
9128277 Steyn et al. Sep 2015 B2
9134552 Ni Chleirigh et al. Sep 2015 B2
9135868 Hagood, IV et al. Sep 2015 B2
9158106 Hagood et al. Oct 2015 B2
9160968 Hines et al. Oct 2015 B2
9167205 Hines et al. Oct 2015 B2
9176318 Hagood et al. Nov 2015 B2
9177523 Hagood et al. Nov 2015 B2
9182587 Brosnihan et al. Nov 2015 B2
9182604 Cossairt et al. Nov 2015 B2
9188731 Woodgate et al. Nov 2015 B2
9229222 Hagood et al. Jan 2016 B2
9232274 Meuninck et al. Jan 2016 B2
9235057 Robinson et al. Jan 2016 B2
9237337 Ramsey et al. Jan 2016 B2
9243774 Kim et al. Jan 2016 B2
9247228 Malik Jan 2016 B2
9250448 Robinson Feb 2016 B2
9261641 Sykora et al. Feb 2016 B2
9261694 Payne et al. Feb 2016 B2
20020008704 Sheasby Jan 2002 A1
20030067421 Sullivan Apr 2003 A1
20030128205 Varghese Jul 2003 A1
20030197933 Sudo et al. Oct 2003 A1
20040165264 Uehara et al. Aug 2004 A1
20040174604 Brown Sep 2004 A1
20040192430 Burak et al. Sep 2004 A1
20050059487 Wilder et al. Mar 2005 A1
20050083400 Hirayama et al. Apr 2005 A1
20050111100 Mather et al. May 2005 A1
20050190443 Nam et al. Sep 2005 A1
20060023065 Alden Feb 2006 A1
20060039181 Yang et al. Feb 2006 A1
20060044987 Anderson et al. Mar 2006 A1
20060078180 Berretty Apr 2006 A1
20060244918 Cossairt et al. Nov 2006 A1
20060262122 Hoddie Nov 2006 A1
20070146358 Ijzerman Jun 2007 A1
20070165305 Mehrle Jul 2007 A1
20070222954 Hattori Sep 2007 A1
20070229778 Cha et al. Oct 2007 A1
20070255139 Deschinger et al. Nov 2007 A1
20070268590 Schwerdtner Nov 2007 A1
20080079662 Saishu et al. Apr 2008 A1
20080094853 Kim et al. Apr 2008 A1
20080123182 Cernasov May 2008 A1
20080204550 De Zwart et al. Aug 2008 A1
20080211734 Huitema et al. Sep 2008 A1
20080225114 De Zwart et al. Sep 2008 A1
20080247042 Scwerdtner Oct 2008 A1
20080259233 Krijn et al. Oct 2008 A1
20080281767 Garner Nov 2008 A1
20080291267 Leveco et al. Nov 2008 A1
20080316303 Chiu et al. Dec 2008 A1
20080316604 Redert et al. Dec 2008 A1
20090002335 Chaudhri Jan 2009 A1
20090051759 Adkins et al. Feb 2009 A1
20090217209 Chen et al. Aug 2009 A1
20090237564 Kikinis Sep 2009 A1
20090309887 Moller et al. Dec 2009 A1
20090309958 Hamagishi et al. Dec 2009 A1
20100007582 Zalewski Jan 2010 A1
20100026795 Moller et al. Feb 2010 A1
20100026797 Meuwissen et al. Feb 2010 A1
20100033813 Rogoff Feb 2010 A1
20100050080 Libert Feb 2010 A1
20100080448 Tam Apr 2010 A1
20100097687 Lipovetskaya et al. Apr 2010 A1
20100110316 Huang et al. May 2010 A1
20100165081 Jung et al. Jul 2010 A1
20100188572 Card, II Jul 2010 A1
20100245548 Sasaki et al. Sep 2010 A1
20100302237 Aramaki Dec 2010 A1
20100309287 Rodriguez Dec 2010 A1
20100309290 Myers Dec 2010 A1
20110000971 Onderko Jan 2011 A1
20110012897 Stanton Jan 2011 A1
20110013258 Lee et al. Jan 2011 A1
20110032483 Hruska et al. Feb 2011 A1
20110074770 Robinson Mar 2011 A1
20110074773 Jung Mar 2011 A1
20110085094 Kao et al. Apr 2011 A1
20110109629 Ericson et al. May 2011 A1
20110134109 Izumi Jun 2011 A1
20110149030 Kang et al. Jun 2011 A1
20110188773 Wei et al. Aug 2011 A1
20110210964 Chiu et al. Sep 2011 A1
20110234605 Smith et al. Sep 2011 A1
20110246877 Kwak et al. Oct 2011 A1
20110249026 Singh Oct 2011 A1
20110254929 Yang et al. Oct 2011 A1
20110291945 Ewing, Jr. et al. Dec 2011 A1
20110316679 Pihlaja Dec 2011 A1
20120013606 Tsai et al. Jan 2012 A1
20120019883 Chae et al. Jan 2012 A1
20120026586 Chen Feb 2012 A1
20120038745 Yu Feb 2012 A1
20120050262 Kim et al. Mar 2012 A1
20120057006 Joseph et al. Mar 2012 A1
20120057229 Kikuchi et al. Mar 2012 A1
20120062549 Woo et al. Mar 2012 A1
20120069019 Richards Mar 2012 A1
20120069146 Lee et al. Mar 2012 A1
20120081359 Lee et al. Apr 2012 A1
20120102436 Nurmi Apr 2012 A1
20120113018 Yan May 2012 A1
20120154559 Voss et al. Jun 2012 A1
20120194506 Passmore Aug 2012 A1
20120202187 Brinkerhoff, III Aug 2012 A1
20120206484 Hauschild et al. Aug 2012 A1
20120223879 Winter Sep 2012 A1
20120229450 Kim et al. Sep 2012 A1
20120229718 Huang et al. Sep 2012 A1
20120249534 Kanagawa Oct 2012 A1
20120249836 Ali et al. Oct 2012 A1
20120262398 Kim et al. Oct 2012 A1
20120274626 Hsieh Nov 2012 A1
20120274634 Yamada Nov 2012 A1
20130027390 Kim et al. Jan 2013 A1
20130038611 Noritake et al. Feb 2013 A1
20130057647 Moon Mar 2013 A1
20130127846 Isogai May 2013 A1
20130127989 Chen May 2013 A1
20130202221 Tsai et al. Aug 2013 A1
20140035902 An et al. Feb 2014 A1
20140036173 Chang Feb 2014 A1
20140192172 Kang et al. Jul 2014 A1
20140223482 McIntosh Aug 2014 A1
20140267243 Venkataraman Sep 2014 A1
20140355302 Wilcox et al. Dec 2014 A1
20150070481 S. et al. Mar 2015 A1
20150113400 Andrianakou Apr 2015 A1
20150116457 Barkatullah Apr 2015 A1
20150116458 Barkatullah Apr 2015 A1
20150185957 Weng et al. Jul 2015 A1
20150226972 Wang Aug 2015 A1
20150260999 Wang et al. Sep 2015 A1
20150279083 Pradeep Oct 2015 A1
20150341616 Siegel et al. Nov 2015 A1
Foreign Referenced Citations (3)
Number Date Country
2012068532 May 2012 WO
2013109252 Jul 2013 WO
2015026017 Feb 2015 WO
Non-Patent Literature Citations (2)
Entry
http://brorsoft.com/how-to/import-mp4-to-final-cut-pro.html, captured Aug. 17 2013 by Archive.org.
International Search Report and Written Opinion, PCT International Patent Application No. PCT/US2016/061313, Craig Peterson, dated Jan. 19, 2017, 22 pages.
Related Publications (1)
Number Date Country
20150371450 A1 Dec 2015 US
Provisional Applications (1)
Number Date Country
62014269 Jun 2014 US