RU2693906C2 - Основанный на правилах анализ важности видео - Google Patents
Основанный на правилах анализ важности видео Download PDFInfo
- Publication number
- RU2693906C2 RU2693906C2 RU2016148407A RU2016148407A RU2693906C2 RU 2693906 C2 RU2693906 C2 RU 2693906C2 RU 2016148407 A RU2016148407 A RU 2016148407A RU 2016148407 A RU2016148407 A RU 2016148407A RU 2693906 C2 RU2693906 C2 RU 2693906C2
- Authority
- RU
- Russia
- Prior art keywords
- video
- video frame
- frame
- importance
- file
- Prior art date
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 214
- 239000012634 fragment Substances 0.000 claims abstract description 120
- 230000033001 locomotion Effects 0.000 claims description 105
- 238000000034 method Methods 0.000 claims description 42
- 210000000887 face Anatomy 0.000 claims description 28
- 230000009466 transformation Effects 0.000 claims description 20
- 238000001514 detection method Methods 0.000 claims description 18
- 239000011159 matrix material Substances 0.000 claims description 12
- 230000009471 action Effects 0.000 claims description 10
- 230000011218 segmentation Effects 0.000 claims description 8
- 230000015572 biosynthetic process Effects 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 2
- 239000000126 substance Substances 0.000 abstract 1
- 230000000875 corresponding effect Effects 0.000 description 32
- 230000008569 process Effects 0.000 description 26
- 238000006073 displacement reaction Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000011156 evaluation Methods 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000001133 acceleration Effects 0.000 description 5
- 239000003086 colorant Substances 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 5
- 238000004091 panning Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000002596 correlated effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000010224 classification analysis Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013477 bayesian statistics method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012950 reanalysis Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/49—Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/7837—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using objects detected or recognised in the video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/7847—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content
- G06F16/786—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content using motion, e.g. object motion or camera motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
- G11B27/034—Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Library & Information Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
- Television Signal Processing For Recording (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Picture Signal Circuits (AREA)
Abstract
Изобретение относится к области вычислительной техники для анализа видеоданных. Технический результат заключается в повышении точности анализа видеокадра видеоданных. Технический результат достигается за счет сегментирования видеофайла на видеофрагменты с разными значениями важности фрагмента, основываясь на оценках важности кадра, соответствующих видеокадру, и других оценках важности кадра, соответствующих дополнительным видеокадрам видеофайла; ранжирования видеофрагментов согласно значениям важности фрагментов; и когда попытка ранжирования заканчивается неудачно из-за недостаточного наличия высокоуровневых особенностей в видеокадре и дополнительных видеокадрах видеофайла, получения оценки особенностей как для высокоуровневых особенностей, так и для низкоуровневых особенностей видеокадров для выполнения ранжирования, причем низкоуровневые особенности включают в себя по меньшей мере одно из качества экспозиции, качества насыщенности, разнообразия оттенков, дрожания видеокадров, средней яркости, цветовой энтропии и различий гистограмм между смежными видеокадрами. 3 н. и 5 з.п. ф-лы, 7 ил.
Description
УРОВЕНЬ ТЕХНИКИ
[0001] Потребители часто записывают видео, используя свои смартфоны и личные видеорегистраторы. Однако, только небольшой процент от этих потребителей редактируют и делятся своими видео с другими людьми. Дополнительно, потребитель может обнаруживать, что редактирование таких видео является утомительным процессом, поскольку видео в общем случае записываются случайным образом без значительного планирования и могут содержать только несколько интересных моментов. Поскольку все больше видео создаются потребителем с течением времени, потребитель может также с трудом помнить содержимое видео. Хотя большинство устройств воспроизведения видео могут обеспечивать эскизные представления видео, такие эскизные представления могут не обеспечивать достаточные подсказки о содержимом видео.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0002] Описанное в данной работе является методиками для выполнения основанного на правилах анализа видео файла для ранжирования фрагментов видео файла, основываясь на их важности. Методики могут также включать в себя выполнение основанного на правилах анализа коллекции видео файлов для ранжирования множества видео файлов, основываясь на их важности. Важность видео файла или видео фрагмента может коррелироваться со степенью интереса, который видео файл или видео фрагмент, как ожидают, будет вызывать у зрителя. В различных вариантах осуществления основанный на правиле анализ может оценивать важность видео файла или видео фрагмента, основываясь на субъективной важности и/или на объективном техническом качестве видеокадров в видео файле или видео фрагменте.
[0003] Это краткое изложение сущности изобретения приведено для представления в упрощенной форме подборки концепций, которые дополнительно описаны ниже в подробном описании. Данное краткое изложение сущности изобретения не предназначена ни для идентификации главных признаков или существенных признаков заявляемого изобретения, ни для использования для ограничения объема заявляемого изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0004] Подробное описание описано со ссылкой на сопроводительные фигуры. На фигурах крайняя левая цифра (ы) номера ссылки идентифицирует фигуру, на которой первый раз появляется номер ссылки. Использование того же самого номера ссылки на различных фигурах указывает аналогичные или идентичные элементы.
[0005] Фиг. 1 - структурная схема, которая показывает примерную схему использования средства основанного на правилах анализа видео для ранжирования видео фрагментов видео файла или видео файлов в коллекции видео файлов, основываясь на их важности.
[0006] Фиг. 2 - иллюстративная схема, которая показывает примерные компоненты средства основанного на правилах анализа видео для ранжирования видео фрагментов видео файла или видео файлов в коллекции видео файлов, основываясь на их важности.
[0007] Фиг. 3 - иллюстративная схема, которая показывает использование гомографического преобразования для выравнивания примерных характерных точек в множестве видеокадров.
[0008] Фиг. 4 - последовательность операций, которая показывает примерный процесс для использования основанного на правилах анализа видео для анализа особенностей в видео файле для ранжирования видео фрагментов видео файла, основываясь на их важности.
[0009] Фиг. 5 - последовательность операций, которая показывает примерный процесс для использования основанного на правилах анализа видео для анализа особенностей видео файлов для ранжирования видео файлов, основываясь на важности.
[0010] Фиг. 6 - последовательность операций, которая показывает примерный процесс для вычисления оценки важности лица для видеокадра.
[0011] Фиг. 7 - последовательность операций, которая показывает примерный процесс для определения важных видео фрагментов в пределах видео с помощью анализа перемещения характерных точек.
ПОДРОБНОЕ ОПИСАНИЕ
[0012] Описанное в данной работе является методиками для выполнения основанного на правилах анализа видео файла для ранжирования фрагментов видео файла, основываясь на их важности. Методики могут также включать в себя выполнение основанного на правилах анализа коллекции видео файлов для ранжирования видео файлов, основываясь на их важности. Важность видео файла или видео фрагмента может коррелироваться со степенью интереса, который видео файл или видео фрагмент, как ожидают, будет вызывать у зрителя. В различных вариантах осуществления основанный на правилах анализ может оценивать важность видео файла или видео фрагмента, основываясь на субъективной важности и/или объективном техническом качестве видеокадров в видео файле или видео фрагменте. Примером субъективной важности может быть то, что зритель будет считать видеокадр, изображающий лицо человека, который известен зрителю, как более важный, чем видеокадр, который изображает лицо человека, которого зритель не знает. Примером объективного технического качества может быть качество экспозиции видеокадра.
[0013] Основанный на правилах анализ содержит анализ звукового содержимого и видео содержимого видео файлов на присутствие множества низкоуровневых особенностей и высокоуровневых особенностей на покадровой основе. Например, низкоуровневые особенности могут включать в себя такие особенности, как качество экспозиции, качество насыщенности, дрожание видеокадров, средняя яркость, цветовая энтропия и/или различия гистограмм между смежными видеокадрами. Высокоуровневые особенности могут включать в себя такие особенности, как количество, расположение и/или характерные особенности лица для человеческих лиц, которые обнаружены в видеокадрах. Анализ может включать в себя применение локальных правил и глобальных правил. Локальные правила могут применяться во время генерации результатов анализа особенности для видеокадра, а глобальные правила могут применяться во время генерации результатов анализа особенности для всего видео файла.
[0014] Правила могут обеспечивать и объединять результаты анализа особенностей для генерации оценок важности. Оценки важности могут генерироваться для кадров видео файлов, видео фрагментов и/или видео файлов целиком. Эти оценки важности могут использоваться для ранжирования фрагментов видео файлов и/или видео файлов. Оценки важности могут использоваться для облегчения просмотра, редактирования и совместного использования видео файлов. Например, потребитель может выбирать набор видео файлов с самыми высокими оценками важности для совместного использования на веб-сайте. В другом примере приложение может объединять фрагменты видео файла с самыми высокими оценками важности для создания видео файла самых интересных моментов.
[0015] В некоторых случаях видео файл может сегментироваться на видео фрагменты с различными степенями важности, основываясь на величине обнаруженного перемещения камеры. Перемещение камеры может обнаруживаться посредством перемещения характерных точек, которые обнаружены на видеокадрах в видео файле. В некоторых случаях важность видео фрагмента может коррелироваться с общим интересом, который видео фрагмент, как ожидают, будет иметь у зрителей.
[0016] Использование методик, описанных в данной работе, может давать возможность пользователю ранжировать видео файлы, основываясь на их важности для пользователя. Основываясь на таком ранжировании, пользователь может принимать решение, какие видео файлы сохранить, а какие видео файлы удалить. В некоторых случаях пользователь может также использовать ранжирование видео файлов для решения, перенести или нет определенные видео файлы на веб-сайт совместного использования в Интернет. Методики, описанные в данной работе, могут также представлять эскизные представления, которые представляют важность фрагментов видео файла, так что пользователь может сразу отличать интересные части видео файла. Такая информация может помогать пользователю при редактировании видео файла для улучшения качества содержимого или выделения конкретных фрагментов видео файла. Примеры методик для выполнения основанного на правилах анализа видео файлов в соответствии с различными вариантами осуществления описаны ниже со ссылкой на фиг. 1-7.
Примерная схема
[0017] Фиг. 1 - структурная схема, которая показывает примерную схему 100 использования средства основанного на правилах анализа видео для ранжирования видео фрагментов видео файла или видео файлов в коллекции видео файлов, основываясь на важности. Примерная схема 100 может включать в себя средство 102 анализа видео. Средство 102 анализа видео может выполняться на одном или большем количестве вычислительных устройств 104. Одно или большее количество вычислительных устройств 104 может включать в себя универсальные компьютеры, такие как настольные компьютеры, планшетные компьютеры, переносные компьютеры, серверы и т.д. Однако, в других вариантах осуществления вычислительные устройства 104 могут включать в себя смартфоны, игровые приставки или любые другие электронные устройства. Множество вычислительных устройств 104 могут включать в себя различные процессоры, такие как центральные процессоры (CPU), графические процессоры (GPU), процессоры другого типа или комбинация любого из приведенного выше.
[0018] Средство 102 анализа видео может выполнять основанный на правилах анализ видео коллекции 106. Видео коллекция 106 может включать в себя множество видео файлов, таких как видео файлы 108 (1) - 108 (N). Основанный на правилах анализ может содержать анализ звукового содержимого и видео содержимого видео файлов 108 (1) - 108 (N) на присутствие множества особенностей 110 низкого уровня и множества особенностей 112 высокого уровня на покадровой основе. Например, множество особенностей 110 низкого уровня могут включать в себя такие особенности, как качество экспозиции, качество насыщенности и дрожание видеокадров. Множество особенностей 112 высокого уровня могут включать в себя такие особенности, как количество, расположение и характерные особенности лица для человеческих лиц, которые обнаружены на видеокадрах.
[0019] Выполняя основанный на правилах анализ, средство 102 анализа видео может генерировать оценки важности для фрагментов видео файла, такого как видео 108 (1), и оценки важности для видео файлов, таких как видео файлы 108 (1) - 108 (N) из видео коллекции 106. Соответственно, средство 102 анализа видео может ранжировать видео фрагменты согласно их оценкам важности. Например, видео файл 108 (1) может включать в себя видео фрагмент 114 и видео фрагмент 116, которые ранжируются согласно их оценкам важности, таким как оценки 118 и 120 важности, соответственно. Когда видео фрагменты ранжированы, средство 102 анализа видео может отображать эскизные представления видео фрагментов, причем выбор эскизного представления может побуждать медиапроигрыватель 122 воспроизводить соответствующий видео фрагмент.
[0020] Средство 102 анализа видео может также ранжировать видео файлы в видео коллекции 106 согласно их оценкам важности. Например, видео файлы 108 (1) - 108 (N) видео коллекции 106 могут ранжироваться согласно их оценкам 124 (1) - 124 (N) важности. Когда видео файлы ранжированы, средство 102 анализа видео может отображать эскизные представления видео файлов, причем выбор эскизного представления может побуждать медиапроигрыватель 122 воспроизводить соответствующий видео файл или фрагмент соответствующего видео файла.
Примерные компоненты
[0021] Фиг. 2 - иллюстративная схема, которая показывает примерные компоненты средства 102 основанного на правилах анализа видео для ранжирования видео фрагментов видео файла или видео файлов в коллекции видео файлов, основываясь на их важности. Средство 102 анализа видео может воплощаться с помощью одного или большего количества вычислительных устройств 104. Вычислительные устройства 104 могут включать в себя один или большее количество процессоров 202, интерфейсы 204 и память 206. Каждый из процессоров 202 может быть одноядерным процессором или многоядерным процессором. Интерфейсы 204 могут включать в себя пользовательские интерфейсы и сетевые интерфейсы. Пользовательские интерфейсы могут включать в себя устройство вывода данных (например, визуальное устройство отображения, звуковые динамики) и одно или большее количество устройств ввода данных. Устройства ввода данных могут включать в себя, но не ограничены ими, комбинации одной или большего количества дополнительных клавиатур, клавиатур, устройств «мышь», сенсорных экранов, которые воспринимают жесты, микрофонов, устройств распознавания голоса или речи и любые другие подходящие устройства или другие способы выбора электроники/программного обеспечения.
[0022] Сетевой интерфейс может включать в себя компоненты интерфейса проводной и/или беспроводной связи, которые дают возможность вычислительным устройствам 104 передавать и принимать данные посредством сети. В различных вариантах осуществления компонент беспроводного интерфейса может включать в себя, но не ограничен ими, сотовую связь, Wi-Fi, ультраширокополосную (UWB) связь, персональные сети (например, Bluetooth), спутниковые передачи и/или так далее. Компонент проводного интерфейса может включать в себя прямой интерфейс ввода - вывода, такой как интерфейс Ethernet, последовательный интерфейс, интерфейс универсальной последовательной шины (USB) и/или так далее. Также, вычислительные устройства 104 могут иметь сетевые возможности. Например, вычислительные устройства 104 могут обмениваться информацией с другими электронными устройствами (например, с портативными компьютерами, настольными компьютерами, серверами, мобильными телефонами и т.д.) посредством одной или большего количества сетей, таких как Интернет, мобильные сети, глобальные сети, локальные сети и т.д.
[0023] Память 206 может воплощаться, используя считываемый компьютером носитель, такой как компьютерные носители данных. Считываемый компьютером носитель включает в себя, по меньшей мере, считываемые компьютером носители двух типов, а именно, компьютерные носители данных и средства связи. Компьютерные носители данных включают в себя энергозависимые и энергонезависимые, сменные и несменные носители, воплощаемые любым способом или технологией хранения информации, такой как считываемые компьютером команды, структуры данных, модули программы или другие данные. Компьютерные носители данных включают в себя, но не ограничены ими, ОП (оперативную память), ПЗУ (постоянное запоминающее устройство), ЭСППЗУ (электрическое стираемое программируемое ПЗУ), флэш-память или память другой технологии, CD-ROM (запоминающее устройство на компакт-дисках), цифровые универсальные диски (DVD) или другие оптические запоминающие устройства, магнитные кассеты, магнитную ленту, запоминающее устройство на магнитном диске или другие магнитные запоминающие устройства, или любой другой не являющийся временным носитель, который может использоваться для хранения информации для доступа с помощью вычислительного устройства. Напротив, средства связи могут воплощать считываемые компьютером команды, структуры данных, модули программы или другие данные в модулированном сигнале данных, таком как несущая, или используя другой механизм передачи. Как определено в данной работе, компьютерные носители данных не включают в себя средства связи.
[0024] Память 206 вычислительных устройств 104 может хранить операционную систему 208 и модули, которые воплощают средство 102 анализа видео. Операционная система 208 может включать в себя компоненты, которые дают возможность вычислительным устройствам 104 принимать данные посредством различных устройств ввода данных (например, пользовательского элемента управления, сетевых интерфейсов и/или запоминающих устройств) и обрабатывать данные, используя процессоры 202, для генерации выводимой информации. Операционная система 208 может дополнительно включать в себя один или большее количество компонентов, которые представляют выводимую информацию (например, отображают изображение на электронном дисплее, сохраняют данные в памяти, передают данные на другое электронное устройство и т.д.). Операционная система 208 может давать возможность пользователю взаимодействовать с модулями средства 102 анализа видео, используя интерфейс 204. Дополнительно, операционная система 208 может включать в себя другие компоненты, которые выполняют различные другие функции, в общем случае связанные с операционной системой.
[0025] Модули могут включать в себя модуль 210 видеодекодера, модуль 212 анализа низкого уровня, модуль 214 анализа высокого уровня, модуль 216 анализа перемещения, модуль 218 вычисления важности, модуль 220 сегментации видео, модуль 222 ранжирования видео и модуль 224 пользовательского интерфейса. Каждый из модулей может включать в себя подпрограммы, команды программ, объекты и/или структуры данных, которые выполняют конкретные задачи или воплощают конкретные абстрактные типы данных. Дополнительно, хранилище 226 данных может постоянно находиться в памяти 206. Каждый модуль 212 анализа низкого уровня и модуль 214 анализа высокого уровня может применять локальные правила или глобальные правила для анализа важности данных особенности, то есть видео данных и/или звуковых данных, в видео файлах. Локальное правило может влиять на назначение важности для одного видеокадра, основываясь на данных особенности в одном видеокадре. Наоборот, глобальное правило может влиять на назначение важности для всего видео файла, основываясь на данных особенности в множестве видеокадров видео файла, или влиять на назначение важности для каждого набора видеокадров в видео файле, основываясь на особенностях, которые совместно используются в наборе видеокадров.
[0026] Модуль 210 видеодекодера может декодировать видео файл, такой как видео файл 108 (1), для получения видеокадров и/или звуковых данных, связанных с каждым из видеокадров. Модуль 210 видеодекодера может использовать различные кодеки для декодирования видео файлов, такие как H.264, MPEG 2, MPEG 4 и т.д.
[0027] Модуль 212 анализа низкого уровня может анализировать каждый декодированный видеокадр на присутствие особенностей низкого уровня для создания оценок особенностей. В различных вариантах осуществления особенности низкого уровня могут включать в себя качество экспозиции, качество насыщенности, разнообразие оттенков, дрожание, среднюю яркость, цветовую энтропию и/или различия гистограмм между смежными видеокадрами. Модуль 212 анализа низкого уровня может использовать алгоритмы для извлечения гистограмм, которые показывают экспозицию, насыщенность и оттенки видеокадров. При анализе качества экспозиции модуль 212 анализа низкого уровня может анализировать гистограмму экспозиции на присутствие сбалансированности экспозиции видеокадра. Модуль 212 анализа низкого уровня может назначать оценку рейтинга экспозиции для видеокадра, основываясь на сбалансированности экспозиции согласно локальному правилу, в котором более высокая сбалансированность экспозиции может приводить к более высокой оценке рейтинга экспозиции. Наоборот, более низкая сбалансированность экспозиции видеокадра может приводить к более низкой оценке рейтинга экспозиции.
[0028] При анализе качества насыщенности модуль 212 анализа низкого уровня может анализировать гистограмму насыщенности видеокадра, например, гистограмму насыщенности для цветового пространства HSV. Основываясь на анализе, модуль 212 анализа низкого уровня может вычислять оценку насыщенности, которая отражает величину насыщенности в среднем наборе значений в гистограмме насыщенности согласно локальному правилу. Также, большая насыщенность в этом среднем диапазоне приводит к более высокой оценке насыщенности для видеокадра. Наоборот, меньшая насыщенность в этом среднем диапазоне приводит к более низкой оценке насыщенности для видеокадра.
[0029] При анализе разнообразия оттенков модуль 212 анализа низкого уровня может давать оценку сбалансированности гистограммы оттенков для видеокадра. Модуль 212 анализа низкого уровня может дополнительно назначать оценки оттенков, основываясь на локальном правиле. Соответственно, модуль 212 анализа низкого уровня может назначать более высокую оценку оттенков, когда оттенки видеокадра хорошо сбалансированы, то есть имеют больше разнообразия цветов. Наоборот, модуль анализа низкого уровня может назначать более низкую оценку оттенков, когда оттенки видеокадра менее сбалансированы, то есть имеют меньше разнообразия цветов.
[0030] При анализе дрожания модуль 212 анализа низкого уровня может использовать модуль 216 анализа перемещения для отслеживания перемещения характерных точек между кадрами и генерации преобразования, которое моделирует это перемещение. Характерные точки являются интересующими точками на видеокадре, расположение которых может достоверно определяться по множеству видеокадров. Характерная точка отличается тем, что она содержит 2-мерную (2D) структуру, и может быть ограничена в направлениях x и y. Модуль 212 анализа низкого уровня может использовать преобразование для анализа локальных и глобальных тенденций, относящихся к величине и направлению перемещения характерных точек. Локальные и глобальные тенденции могут определять величину дрожания в видео файле в качестве атрибута локального изменение в кадре. Дрожание видео файла может определяться с помощью модуля 216 анализа перемещения, как описано ниже относительно анализа определения категории перемещения. Соответственно, модуль 212 анализа низкого уровня может применять глобальное правило, которое назначает оценку дрожания видео файлу, которая обратно пропорциональна сумме дрожания в видео файле, так что большее дрожание приводит к более низкой оценке дрожания, и наоборот.
[0031] При анализе средней яркости модуль 212 анализа низкого уровня может вычислять среднее значение компонентов сигнала яркости всех пикселей на видеокадре. В различных вариантах осуществления модуль 212 анализа низкого уровня может усреднять значения пикселей на полутоновом представлении изображения видеокадра. Например, значения пикселя могут колебаться от 0-255, причем 0 соответствует черному цвету, а 255 соответствует белому цвету. В некоторых вариантах осуществления модуль 212 анализа низкого уровня может дополнительно оптимизироваться для считывания значения пикселя каждого n-го пикселя. Другими словами, модуль 212 анализа низкого уровня может пропускать предопределенное количество пикселей в направлении x и/или в направлении y, выполняя анализ. Основываясь на средних значениях пикселей для пикселей на видеокадре, модуль 212 анализа низкого уровня может определять яркость видеокадра. Соответственно, модуль 212 анализа низкого уровня может применять локальное правило для назначения оценки яркости, которая пропорциональна среднему значению пикселя видеокадра, когда среднее значение пикселя видеокадра совпадает с предопределенной средней яркостью. Однако, модуль 212 анализа низкого уровня может назначать оценку яркости, которая ниже, чем любая оценка яркости, которая назначена среднему значению пикселя, которое находится в пределах предопределенной средней яркости, когда среднее значение пикселя выходит за пределы, то есть выше или ниже предопределенной средней яркости. Такая оценка яркости может уменьшаться, когда среднее значение пикселя уменьшается, в то время как оно ниже, чем нижняя граница предопределенной средней яркости. Такая оценка яркости может также уменьшаться, когда среднее значение пикселя увеличивается, в то время как оно выше, чем верхняя граница предопределенной средней яркости.
[0032] При анализе цветовой энтропии модуль 212 анализа низкого уровня может определять величину цветовой энтропии в видеокадре. Величина цветовой энтропии является показателем различий между цветами на видеокадре. Значение цветовой энтропии, назначенное с помощью модуля 212 анализа низкого уровня, может колебаться от «0» до «1», в зависимости от фактической величины цветовой энтропии на видеокадре. Например, модуль 212 анализа низкого уровня может назначать значение цветовой энтропии, равное «1», видеокадру, когда пиксели видеокадра имеют самую большую величину различия. Модуль 212 анализа низкого уровня может назначать значение цветовой энтропии, равное «0», видеокадру, когда пиксели видеокадра имеют наименьшую величину различия. В различных вариантах осуществления модуль 212 анализа низкого уровня может определять значение цветовой энтропии с помощью вычисления цветовой гистограммы области для цветового пространства (например, цветового пространства RGB или цветового пространства HSV).
[0033] В таких вариантах осуществления модуль 212 анализа низкого уровня может первоначально создавать гистограмму, которая фиксирует множество измерений цвета. Например, в цветовом пространстве RGB каждый из R, G и B может иметь 256 возможных значений, когда гистограмма может иметь 256×256×256 сегментов. По меньшей мере в одном варианте осуществления сегменты могут дополнительно квантоваться для оптимизации размера сегмента и/или скорости обработки, например, размер может быть 25×25×25, так что множество значений цветов попадут в тот же самый сегмент. Таким образом, в одном примере гистограмма может выражаться в следующем формате в коде: intHistogram[256 * 256 * 256], что подразумевает, что матрица гистограммы имеет элемент для всех возможных цветов в цветовом пространстве RGB. Соответственно, когда модуль 212 анализа низкого уровня считывает пиксель, модуль 212 анализа низкого уровня может устанавливать значение следующим образом:
int IndexlnHistogramForColor =
pixelColor.red+(256 *pixelColor.green)+(256*256*pixelColor.blue);
Histogram[lndexInHistogramForColor] =
Histogram [IndexlnHistogramForColor]+1; // когда наблюдается еще один пиксель с этим цветом, увеличивают его счетчик
[0034] Когда вышеупомянутые этапы выполнены для каждого пикселя на видеокадре, модуль 212 анализа низкого уровня может нормировать гистограмму. Другими словами, модуль 212 анализа низкого уровня может делить каждое значение на размер гистограммы, так что значения в гистограмме находятся между 0 и 1, и значения дают в сумме 1. В результате элемент с самым высоким значением появляется наиболее часто на видеокадре.
[0035] Энтропия для значений пикселей в гистограмме может формулироваться как сумма всех (Histogram[n] * log(Histogram[n])), следующим образом:
[0036] Модуль 212 анализа низкого уровня может определять относительную цветовую энтропию (то есть цветовую энтропию видеокадра по отношению к другим видеокадрам), с помощью деления энтропии гистограммы на максимально возможную энтропию. Максимальная возможная энтропия может определяться тогда, когда все Histogram[n] имеют одинаковое значение, то есть равны (1,0/число возможных значений). Когда относительное значение цветовой энтропии для видеокадра получено, модуль 212 анализа низкого уровня может применять локальное правило для получения оценки энтропии для видеокадра из относительной цветовой энтропии видеокадра. В различных вариантах осуществления оценка энтропии видеокадра может быть прямо пропорциональна относительному значению энтропии видеокадра, например, более высокое относительное значение энтропии приводит к более высокой оценке энтропии, и наоборот.
[0037] При анализе различия гистограмм модуль 212 анализа низкого уровня может определять различие гистограмм между двумя смежными видеокадрами. В различных вариантах осуществления модуль 212 анализа низкого уровня может делить каждый видеокадр на множество ячеек (например, 10×10 ячеек). Для каждой ячейки видеокадра t и смежного видеокадра t+1, модуль 212 анализа низкого уровня может вычислять цветовую гистограмму (например, гистограмму RGB). Впоследствии, для каждой ячейки на видеокадре t, модуль 212 анализа низкого уровня может вычислять различие между своей гистограммой и гистограммой ячейки, имеющей соответствующее расположение в смежном видеокадре t+1. Различия между гистограммами пар ячейки в двух смежных видеокадрах могут дополнительно стандартизироваться (например, согласовываться, нормироваться и/или усредняться и т.д.) для получения окончательного значения различия гистограмм для двух смежных кадров, причем данное значение может располагаться между «0» и «1». Когда значение различия гистограмм для двух смежных видеокадров получено, модуль 212 анализа низкого уровня может применять локальное правило для получения оценки различия гистограмм для видеокадра t из значения различия гистограмм. В различных вариантах осуществления оценка различия гистограмм видеокадра может быть прямо пропорциональна различию гистограмм, например, более высокие значения различия гистограмм приводят к более высокой оценке различия гистограмм, и наоборот.
[0038] По меньшей мере в некоторых вариантах осуществления модуль 212 анализа низкого уровня может оптимизировать некоторые из анализов для ускорения обработки видео файла. Например, модуль 212 анализа низкого уровня может выполнять анализы (например, анализ рейтинга экспозиции, анализ разнообразия оттенков и т.д.) для поднабора видеокадров в видео файле, а не для всех видеокадров в видео файле. Модуль 212 анализа низкого уровня может также выполнять один или большее количество анализов по отношению к сокращенной версии исходного кадра для получения некоторой эффективности. Например, анализ разнообразия оттенков и анализ насыщенности для видеокадра могут выполняться по отношению к субдискретизированной версии видеокадра. В другом примере анализ качества экспозиции может выполняться по отношению к монохромной и субдискретизированной версии видеокадра. Модуль 212 анализа низкого уровня может также выполнять множество анализов параллельно или по существу параллельно. Например, анализ качества насыщенности и анализ разнообразия оттенков могут выполняться параллельно.
[0039] Модуль 214 анализа высокого уровня может анализировать каждый декодированный видеокадр на присутствие особенностей высокого уровня. По меньшей мере в одном варианте осуществления анализы особенностей высокого уровня могут включать в себя обнаружение лиц, отслеживание лиц, распознавание лиц, анализ выделенности, анализ мощности звука, анализ классификации звука, анализ речи и анализ перемещения.
[0040] При обнаружении лиц модуль 214 анализа высокого уровня может анализировать декодированный видеокадр для обнаружения, представлены или нет человеческие лица на видеокадре. Обнаруженное лицо может быть направлено в сторону камеры, которая записала видеокадр, или находиться боком по отношению к камере. Основываясь на этом обнаружении, модуль 214 анализа высокого уровня может генерировать список обнаруженных лиц с их расположением на видеокадре, площадью видеокадра, закрытой каждым лицом, и оценками уверенности обнаружения для каждого лица, которые указывают уверенность обнаружения.
[0041] В различных вариантах осуществления модуль 214 анализа высокого уровня может применять локальное правило для вычисления оценки важности лица для видеокадра, основываясь на размере обнаруженного лица в процентах от размера видеокадра. Лицам с одинаковым размером, которые обнаружены на двух видеокадрах, можно назначать одинаковую оценку важности лица. Однако, если лицо на видеокадре t2 будет больше, чем лицо на видеокадре t1, то оценка важности лица для видеокадра t2 будет выше, потому что большие лица считают более важными, чем меньшие лица. В других вариантах осуществления модуль 214 анализа высокого уровня может конфигурироваться для вычисления оценки важности лица, если размер обнаруженного лица находится между минимальным пороговым значением размера и максимальным пороговым значением размера. Наоборот, лица, размер которых меньше минимального порогового значения размера или больше максимального порогового значения размера, можно считать недействительными для вычисления оценки важности лица с помощью модуля 214 анализа высокого уровня, или отрицательное смещение оценки может назначаться соответствующему видеокадру для таких событий.
[0042] Альтернативно или одновременно, локальное правило для вычисления важности лица для видеокадра может учитывать характерные особенности лица для каждого лица, изображенного на видеокадре. Например, характерные особенности лица могут включать в себя, улыбается лицо или нет, или открыты глаза или нет и т.д. Таким образом, положительное смещение оценки может назначаться соответствующему видеокадра для лица, которое улыбается, в то время как отрицательное смещение оценки может назначаться, когда лицо не улыбается. Аналогично, положительное смещение оценки может назначаться соответствующему видеокадру для лица с открытыми глазами, в то время как отрицательное смещение оценки может назначаться, когда глаза закрыты.
[0043] При распознавании лица модуль 214 анализа высокого уровня может использовать алгоритм распознавания лиц для установки соответствия каждого человеческого лица, которое обнаружено на видеокадре, с известным идентификатором человека. В некоторых вариантах осуществления модуль 214 анализа высокого уровня может использовать базу данных знаний известных лиц для установления соответствия человеческого лица известному человеку. Альтернативно или одновременно, модуль 214 анализа высокого уровня может использовать модуль 224 пользовательского интерфейса для обеспечения средств управления пользовательским интерфейсом, что дает возможность пользователю отмечать каждое из одного или большего количества распознанных лиц с помощью идентификатора, рейтинга важности лица и/или взаимоотношений человека с данным лицом со зрителем. По меньшей мере в одном варианте осуществления информация, предоставленная зрителем относительно лиц, может добавляться к базе данных знаний.
[0044] При отслеживании лиц модуль 214 анализа высокого уровня может отслеживать человеческие лица по множеству видеокадров. Таким образом, модуль 214 анализа высокого уровня может устанавливать набор лиц, которые присутствуют в видео файле, а так же отслеживать частоту, с которой каждое лицо появляется в видео файле. Кроме того, при группировке лиц модуль 214 анализа высокого уровня может группировать лица, которые отслеживаются, для определения, принадлежат или нет лица, которые обнаружены на различных видеокадрах, тому же самому человеку. В различных вариантах осуществления модуль 214 анализа высокого уровня может получать набор характерных особенностей лица для каждого из обнаруженных лиц на видеокадрах. Модуль 214 анализа высокого уровня может сравнивать наборы характерных особенностей лица для обнаруженных лиц для группировки обнаруженных лиц в группы согласно подобию характерных особенностей лица. Модуль 214 анализа высокого уровня может оценивать важность каждой группы лиц согласно количеству лиц в каждой группе. Количество лиц в каждой группе прямо пропорционально частоте появления лица в видео файле. Дополнительно, более высокая частота появления может указывать более высокую важность человека с данным лицом, и наоборот. Соответственно, оценка важности группы для группы лиц может быть суммой оценок важности лица для лиц в группе. Также, модуль 214 анализа высокого уровня может суммировать оценки важности лица для лиц в группе, которая изображена на множестве видеокадров, для вычисления оценки важности группы для группы.
[0045] Например, человека, лицо которого появляется в группе с самой высокой оценкой важности группы, можно считать главным героем. Основываясь на такой информации, модуль 214 анализа высокого уровня может применять глобальное правило к видеокадрам, так что оценки важности лица видеокадров, которые показывают главного героя, могут дополнительно положительно смещаться, то есть подниматься. Расположения лиц, которые включает в себя группа, которая записана на множестве видеокадров, могут также снижать оценки важности лица, назначаемые видеокадрам. Например, оценка важности видеокадра, показывающего лицо конкретного человека, может смещаться согласно расстоянию от лица до центра видеокадра вдоль оси (например, оси x или оси y), так что лицо, которое ближе к центру, приводит к более высокой важности для видеокадра, и наоборот.
[0046] При анализе выделенности кадра модуль 214 анализа высокого уровня может обнаруживать выделенные части видеокадра. Например, выделенная часть видеокадра может записывать объект, который находится в движении. Основываясь на анализе выделенности, модуль 214 анализа высокого уровня может применять локальное правило для генерации теплокарты, которая отображает оценку выделенности каждого пикселя на видеокадре. Теплокарта является графическим представлением данных, которые размещены в матрице, причем отдельные значения в матрице представлены, используя цвета. Модуль 214 анализа высокого уровня может дополнительно генерировать оценку выделенности кадра для видеокадра, которая основана на оценках выделенности пикселей на видеокадре. Например, оценка выделенности видеокадра для видеокадра может быть средним значением оценок выделенности пикселей.
[0047] При анализе мощности звука модуль 214 анализа высокого уровня может давать оценку звуковых данных, которые соответствуют продолжительности времени видеокадра (например, 1/30-я или 1/60-я часть секунды), и вычислять среднеквадратическое (RMS) значение мощности звука. Более высокое RMS значение мощности звука может указывать более высокую важность соответствующего видеокадра, и наоборот. Таким образом, модуль 214 анализа высокого уровня может назначать оценку важности мощности звука соответствующему видеокадру согласно локальному правилу.
[0048] При анализе классификации звука модуль 214 анализа высокого уровня может использовать классификатор с машинным обучением для определения, содержат или нет звуковые данные, которые соответствуют по продолжительности времени видеокадру, различные типы звуковых данных (например, шум, речь или музыку). Различные типы звуковых данных могут отражать различную важность соответствующего видеокадра. Основываясь на локальном правиле, модуль 214 анализа высокого уровня может назначать оценку важности классификации звука соответствующему видеокадру, основываясь на типе звуковых данных. Например, присутствие речи может побуждать модуль 214 анализа высокого уровня назначать высокую важность классификации звука соответствующему видеокадру. Напротив, присутствие музыки может быть причиной назначения средней оценки классификации звука соответствующему видеокадру. Кроме того, присутствие шума может побуждать модуль 214 анализа высокого уровня назначать низкую оценку классификации звука соответствующему видеокадру.
[0049] При анализе классификации перемещения модуль 214 анализа высокого уровня может использовать модуль 216 анализа перемещения для отслеживания перемещения характерных точек между видеокадрами и генерации преобразования, которое моделирует это перемещение. Модуль 214 анализа высокого уровня может использовать это преобразование для анализа локальных и глобальных тенденций, относящихся к величине и направлению перемещения. В свою очередь, модуль 214 анализа высокого уровня может использовать локальные и глобальные тенденции для учета дрожания, записанного на видеокадрах, и определения преднамеренного перемещения камеры относительно сцены, например, масштабирования, панорамирования и т.д.
[0050] В различных вариантах осуществления модуль 216 анализа перемещения может инициировать анализ классификации перемещения с помощью определения местонахождения характерных точек для двух смежных кадров. Характерная точка может быть точкой на изображении, которая остается опознаваемой даже при 2-мерных (2D) или трехмерных преобразованиях изображения. Для обнаружения характерных точек модуль 216 анализа перемещения может выполнять понижающую дискретизацию (субдискретизировать) изображение и создавать пирамиду из субдискретизированных изображений меньших размеров. Субдискретизированные изображения затем сравниваются с помощью модуля 216 анализа перемещения для определения общих точек (то есть характерных точек) среди субдискретизированных изображений. В различных вариантах осуществления модуль 216 анализа перемещения может использовать один или большее количество из нескольких алгоритмов обнаружения для обнаружения общих точек, например, алгоритм обнаружения Лапласа, алгоритм обнаружения Харриса, алгоритм обнаружения Гессиана, алгоритм обнаружения Гессиана-Лапласа, алгоритм обнаружения HessianAffine, алгоритм обнаружения EdgeFoci и т.д.
[0051] Когда характерные точки идентифицированы для двух смежных кадров, модуль 216 анализа перемещения может определять преобразование, которое выравнивает два смежных кадра таким образом, чтобы максимальное количество характерных точек соответствовало. Преобразование может выполняться, используя геометрическое соответствие, которое является воплощением надежной оценки параметра. Преобразование может обеспечивать матрицу гомографического преобразования, которая вычисляется из характерных точек, для которых установлено соответствие. В различных вариантах осуществления модуль 216 анализа перемещения может использовать алгоритм случайных выборок и согласования (RANSAC) для получения начальных оценок параметра и списка статистических точек, соответствующих модели, в котором дополнительно усовершенствованы начальные оценки параметра. Различные перемещения камеры на видеокадрах, которые выравниваются с помощью гомографического преобразования, показаны на фиг. 3.
[0052] Фиг. 3 - иллюстративная схема, которая показывает использование гомографического преобразования для выравнивания примерных характерных точек на множестве видеокадров. Как показано, каждый из видеокадров 302-312 может, соответственно, включать в себя группу идентифицированных характерных точек, которые изображены кругами. Например, группа характерных точек на видеокадре 302 изображена кругами 314 (1) - 315 (5). Каждая характерная точка в группе характерных точек может сохранять свое относительное расположение друг относительно друга по множеству видеокадров, несмотря на перемещение камеры, которая записала множество видеокадров. Например, преобразованный видеокадр 316 может быть последующим видеокадром для видеокадра 302, который является результатом следящего перемещения камеры. Преобразованный видеокадр 318 может быть последующим видеокадром для видеокадра 304, который является результатом перемещения с резким подъемом камеры. Преобразованный видеокадр 320 может быть последующим видеокадром для видеокадра 306, который является результатом перемещения масштабирования/движения вперед камеры. Преобразованный видеокадр 312 может быть последующим видеокадром для видеокадра 308, который является результатом поворотного перемещения камеры. Преобразованный видеокадр 314 может быть последующим видеокадром для видеокадра 310, который является результатом вертикального панорамирования/наклона/опрокидывания камеры. Преобразованный видеокадр 316 может быть последующим видеокадром для видеокадра 312, который является результатом горизонтального панорамирования камеры.
[0053] Однако, независимо от перемещения камеры, которая создала преобразованные видеокадры 326-336 из видеокадров 302-312, модуль 216 анализа перемещения может использовать гомографическое преобразование для выравнивания характерной точки на видеокадре и соответствующем ему преобразованном видеокадре.
[0054] Возвращаясь к фиг. 2, алгоритм RANSAC может непосредственно вычислять параметры матрицы преобразования из минимального поднабора соответствий характерных точек. Например, преобразование подобия (например, линейное перемещение, поворот или масштабирование) может вычисляться из двух характерных точек, которые связаны друг с другом, между двумя кадрами. Когда кандидат на геометрическое преобразование получен, алгоритм RANSAC может проверять правильность преобразования с помощью тестирования преобразования на всех других соответствующих характерных точках в наборе данных и генерации счетчика количества точек, соответствующих модели, которые являются характерными точками, которые проецируются в пространстве с достаточной точностью. Другими словами, алгоритм RANSAC может сначала случайно выбирать минимальный набор соответствующих точек, вычислять параметры преобразования из этого набора и затем проверять правильность этих параметров с помощью подсчета количества соответствующих точек, которые соответствуют модели. Впоследствии, алгоритм RANSAC записывает лучшее преобразование. Алгоритм RANSAC может повторять эту процедуру неоднократно, пока вероятность обнаружениях хорошего набора параметров преобразования не достигнет предопределенного порогового значения вероятности, при заданном показателе несоответствия данных.
[0055] В некоторых вариантах осуществления алгоритм RANSAC может изменяться для лучшего использования байесовской статистики. Вместо того, чтобы подсчитывать точки, соответствующие модели, во время проверки правильности параметров преобразования, алгоритм RANSAC может вычислять логарифмическую оценку вероятности для каждого случайного преобразования из всех соответствующих характерных точек. Эта оценка может включать в себя две части: (1) предыдущую оценку вероятности, которая зависит от параметров и от того, насколько далеко параметры находятся от обычно ожидаемых значений, и (2) оценку вероятности, основанную на надежной функции расстояния до повторно проецируемой соответствующей характерной точки. Такая оценка оказывает предпочтение характерным точкам, которые проецируются к правильным расположениям, но дает возможность, чтобы одновременно существовали выбросы.
[0056] Из гомографического преобразования модуль 216 анализа перемещения может извлекать величины и направление компонентов масштабирования и вертикального перемещения, игнорируя другие виды перемещений. Эти величины и направления являются преднамеренным перемещением камеры, которое зарегистрировано на двух смежных кадрах. Другими словами, эти величины и направления являются производной первого порядка от фактического изменения перемещения от первого кадра до второго смежного кадра. Модуль 216 анализа перемещения может определять перемещение дрожания камеры, которая записала видеокадры, с помощью вычисления скользящего среднего данных перемещения векторов перемещения видеокадров и вычитания преднамеренного перемещения камеры из скользящего среднего данных перемещения. Вычисление скользящего среднего данных перемещения устраняет локальную дисперсию и сохраняет долгосрочные тенденции, которые представляют преднамеренное перемещение. Другими словами, различие между преднамеренным перемещением и изменением всего перемещения от первого кадра ко второму кадру является перемещением дрожания камеры, которая записала эти два кадра.
[0057] Величина значений масштабирования и вертикального перемещения, которые зарегистрированы в наборе кадров, может обеспечивать подсказку относительно важности этих кадров. Например, более высокое значение может указывать ускорение перемещения камеры относительно одного или большего количества объектов на видеокадре. Дополнительно, область видеокадра с более высоким ускорением может предполагаться более важной, потому что камера, возможно, сделала быстрое изменение перемещения для фиксации некоторого действия. Соответственно, модуль 214 анализа высокого уровня может назначать оценку важности перемещения каждому кадру, основываясь на величине ускорения перемещения.
[0058] Модуль 216 анализа перемещения может анализировать данные преднамеренного перемещения для определения локальных максимумов и минимумов, вращающихся вокруг пересечений нуля для перемещений и масштабирования, и вертикального линейного перемещения. В некоторых вариантах осуществления модуль 216 анализа перемещения может использовать расположения локальных максимумов и минимумов для сегментации данных на видео фрагменты. Альтернативно или одновременно, модуль 216 анализа перемещения может использовать расположения локальных максимумов и минимумов для сегментации видео файла на видео фрагменты, которые имеют спаренные направления изменения, такие как масштабирование с увеличением, спаренное с масштабированием с уменьшением, панорамирование вверх, спаренное с панорамированием вниз, и т.д.
[0059] Сегментированные видео фрагменты видео файла могут согласовываться с изменениями сцен видео файла. Соответственно, границы фрагментов в видео файле могут использоваться в качестве рекомендации для разделения видео файла на видео фрагменты различной важности. Границы могут выравнивать начало и конец важных/неважных фрагментов с моментами времени, в которых существует смена в перемещении камеры или изменение характера деятельности в сцене. Кроме того, модуль 216 анализа перемещения может объединять и усреднять величины для перемещений масштабирования и панорамирования для фрагмента. Величина ускорения, представленная с помощью среднего значения величин перемещений масштабирования и панорамирования для видео фрагмента, может использоваться с помощью модуля 216 анализа перемещения для назначения оценки важности перемещения видео фрагменту таким же образом, как описано выше по отношению к кадрам.
[0060] По меньшей мере в некоторых вариантах осуществления модуль 214 анализа высокого уровня может оптимизировать некоторые из анализов для ускорения обработки видео файла. Например, модуль 214 анализа высокого уровня может выполнять обнаружение лиц, отслеживание лиц и/или распознавание лиц для одного или большего количества лиц в каждом видеокадре, используя монохромную и субдискретизированную версию видеокадра. Модуль 214 анализа высокого уровня может также выполнять множество анализов параллельно или по существу параллельно. Например, отслеживание лиц и распознавание лиц могут выполняться параллельно.
[0061] Модуль 218 вычисления важности может нормировать различные оценки особенностей, которые генерируются для видеокадров видео файла, и вычислять значение важности видео из видео файла. Например, модуль 218 вычисления важности может усреднять набор нормированных оценок особенности (например, оценку важности лица, оценку важности перемещения, оценку рейтинга экспозиции, оценку насыщенности и т.д.) для каждого видеокадра для получения оценки важности кадра для каждого видеокадра. Оценки важности видеокадра могут дополнительно усредняться для получения значения важности видео из видео файла. В некоторых вариантах осуществления вычисление значения важности видео из видео файла может также включать в себя смещение одной или большего количества оценок особенностей, которые связаны с видеокадрами. Например, модуль 218 вычисления важности может конфигурироваться для применения положительного смещения так, чтобы присутствие лица на видеокадре повлияло на оценку важности кадра для этого кадра в большей степени, чем оценка разнообразия оттенков видеокадра.
[0062] В другом примере модуль 218 вычисления важности может генерировать значение важности видео из видео файла следующим образом:
frame_score=w1 * важность лица+w2 * F2+w3 * F3+··· wn * Fn (1)
в котором wi - веса, и Fi - особенности. Веса могут диктовать важность особенностей. Например, если зритель предпочитает видео, которые является ярким, и F2 является особенностью, которая коррелируется с этим свойством, тогда модуль 218 вычисления важности может конфигурироваться для назначения более высокого значения для W2, чем веса для других особенностей. Это смещение может применяться в других сценариях. В дополнительном примере, если зритель хочет предпочтительно выбирать видео файлы, которые показывают конкретного человека, то зритель может конфигурировать модуль 218 вычисления важности для смещения кадров, которые показывают лицо конкретного человека, для увеличения оценки важности видеокадра для таких видеокадров. В различных вариантах осуществления модуль 218 вычисления важности может сохранять значения особенностей {F1, F2... Fn} для видео файла в хранилище 226 данных. Сохранение значений особенностей для видео файла может устранять в будущем дублирующий анализ видео файла в сценариях, в которых должны смещаться различные особенности.
[0063] По меньшей мере в одном другом варианте осуществления модуль 218 вычисления важности может конфигурироваться для применения отрицательного смещения к особенности, показанной на видеокадре. Например, отрицательное смещение, которое пропорционально величине дрожания, может воплощаться с помощью модуля 218 вычисления важности для снижения оценки важности видеокадра для видеокадра пропорционально дрожанию.
[0064] Модуль 220 сегментации видео может сегментировать видео файл на множество видео фрагментов, основываясь на важности. В некоторых вариантах осуществления модуль 220 сегментации видео может находить видео фрагмент с продолжительностью t, которая короче продолжительности видео файла. В таких вариантах осуществления модуль 220 сегментации видео может вычислять оконную массу, которая является суммой оценок важности кадра в видеокадрах в окне, которое имеет (t * частота кадров) видеокадров видео файла. Такая оконная масса может вычисляться способом последовательного сдвига для всех видеокадров видео файла. Соответственно, модуль 220 сегментации видео может выбирать видеокадр самой высокой оконной массой в качестве центра важного видео фрагмента длительностью t. В других вариантах осуществления модуль 220 сегментации видео может зависеть от модуля 216 анализа перемещения для сегментации видео файла на видео фрагменты, основываясь на данных перемещения. Когда модуль 220 сегментации видео сегментировал видео файл на видео фрагменты, модуль 218 вычисления важности может генерировать значение важности фрагмента для каждого видео фрагмента аналогичным образом, как по отношению к целым видео файлам. Другими словами, модуль 218 вычисления важности может генерировать значение важности фрагмента, основываясь на нормированных оценках важности кадра для видеокадров в видео фрагменте. В некоторых случаях модуль 218 вычисления важности может также применять смещение к одной или большему количеству оценок особенности во время генерации значений важности фрагмента для видео фрагментов.
[0065] В различных вариантах осуществления каждый из модуля 212 анализа низкого уровня, модуля 214 анализа высокого уровня и модуля 218 вычисления важности может сохранять оценки, значения и другую информацию, которые получены для видео фрагментов и/или видео файлов, как связанные метаданные в хранилище 226 данных. Такие метаданные могут объединяться с другими метаданными, которые связаны с видео файлами, такими как дата, расположение, количество совместных использований в Интернет и т.д.
[0066] Модуль 222 ранжирования видео может ранжировать видео фрагменты видео файла, основываясь на значениях важности фрагментов. Альтернативно или одновременно, модуль 222 ранжирования видео может ранжировать видео файлы согласно их значениям важности видео. Ранжирование может выполняться от самого важного до наименее важного, или наоборот. Для каждого ранжированного видео файла модуль 222 ранжирования видео может также сохранять метаданные, относящиеся к видео фрагментам, в ранжированном видео файле. Такие метаданные могут включать в себя ранжирование каждого видео фрагмента, время начала и окончания каждого видео фрагмента, продолжительность каждого видео фрагмента и значение важности фрагмента для каждого видео фрагмента. В некоторых вариантах осуществления модуль 222 ранжирования видео может также вычислять дополнительные значения для видео файла или видео фрагмента. Эти значения могут включать в себя плотность важности, которая может отражать процент от видеокадров в видео файле или видео фрагменте с оценкой важности, которая превышает пороговое значение оценки важности. Эти значения могут также включать в себя плотность качества, которая может отражать процент от кадров в видео файле или видео фрагменте с отрицательными или положительными особенностями, которые превышают соответствующее пороговое значение. Такие отрицательные или положительные особенности могут включать в себя дрожание, переэкспонирование, недоэкспонирование и т.д. Модуль 222 ранжирования видео может сохранять оценки множества видов и другие вычисленные значения, которые используются для генерации ранжирования для отдельных видео файлов и/или видео фрагментов, как связанные метаданные в хранилище 226 данных.
[0067] Когда набор видео файлов или видео фрагментов ранжирован, модуль 222 ранжирования видео может отображать эскизные представления ранжированных видео файлов или видео фрагментов. Соответственно, выбор эскизного представления может побуждать медиапроигрыватель 122 воспроизводить соответствующий видео фрагмент, или другие приложения - обеспечивать соответствующий видео фрагмент для совместного использования и/или редактирования.
[0068] Модуль 224 пользовательского интерфейса может давать возможность пользователю взаимодействовать с модулями средства 102 анализа видео посредством интерфейсов 204. Например, модуль 224 пользовательского интерфейса может давать возможность пользователю выбирать видео файлы для анализа важности, отмечать информацией человеческие лица, которые идентифицированы в видео файлах, выделять лица людей для положительного смещения оценки особенности и/или выбора видео файлов и видео фрагментов для воспроизведения с помощью медиапроигрывателя 122 посредством эскизных представлений. В некоторых вариантах осуществления пользователь может также использовать модуль 224 пользовательского интерфейса для выбора одной или большего количества особенностей низкого уровня или одной или большего количества особенностей высокого уровня видео файла для анализа с помощью средства 102 анализа видео.
[0069] Хранилище 226 данных может сохранять данные, которые используются различными модулями. По меньшей мере в некоторых вариантах осуществления хранилище 226 данных может сохранять видео файлы 228, ранжированные видео файлы 230, ранжированные видео фрагменты 232 и/или метаданные 234, связанные с ранжированными видео файлами 230 и ранжированными видео фрагментами 232. В других вариантах осуществления хранилище 226 данных может сохранять данные (например, оценки важности), связанные с видео файлами или видео фрагментами, которые используются для ранжирования видео файлов и видео фрагментов. Хранилище 226 данных может дополнительно сохранять дополнительные результаты и значения, которые генерируются с помощью модулей, например, матрицы гомографического преобразования, оценки особенностей, значения важности видео, значения важности фрагментов и т.д.
[0070] В некоторых вариантах осуществления одно или большее количество дополнительных приложений могут устанавливаться на вычислительных устройствах 104. Такие приложения могут включать в себя приложение редактирования видео, которое используется для компиляции нового видео файла из выбранных видео фрагментов исходного видео файла. Например, такое приложение редактирования видео может давать возможность пользователю выбирать видео фрагменты с помощью значений важности фрагментов, которые превышают конкретное пороговое значение оценки, для объединения в цифровой форме для создания видео файла самых интересных моментов. Приложения могут также включать в себя приложение для совместного использования в Интернет, которое дает возможность пользователю переносить видео файл, видео фрагмент или видео самых интересных моментов в Интернет. В дополнительных вариантах осуществления одно или большее количество других приложений могут устанавливаться на вычислительных устройствах 104 для получения доступа к данным, сохраненным в хранилище 226 данных для видео файлов и видео фрагментов посредством прикладного интерфейса. Такое приложение может получать доступ к данным для использования результатов анализа другими способами. Другими словами, средство 102 анализа видео может функционировать в качестве услуги более низкого уровня для обеспечения данных к этим приложениям.
Примерные процессы
[0071] Фиг. 4-7 описывают различные примерные процессы для выполнения основанного на правилах анализа важности видео файлов. Порядок, в котором операции описаны в каждом примерном процессе, не предназначен для рассмотрения в качестве ограничения, и любое количество описанных операций может объединяться в любом порядке и/или параллельно для воплощения каждого процесса. Кроме того, операции на каждой из фиг. 4-7 могут воплощаться в аппаратных средствах, программном обеспечении и в их комбинации. В контексте программного обеспечения операции представляют выполняемые с помощью компьютера команды, которые, когда выполняются с помощью одного или большего количества процессоров, побуждают один или большее количество процессоров выполнять указанные операции. В общем случае выполняемые с помощью компьютера команды включают в себя подпрограммы, программы, задачи, компоненты, структуры данных и т.д., которые побуждают выполняться конкретные функции или воплощаться конкретные данные абстрактного типа.
[0072] Фиг. 4 - последовательность операций, которая показывает примерный процесс 400 для использования основанного на правилах анализа видео для анализа особенностей в видео файле для ранжирования видео фрагментов видео файла, основываясь на их важности. На этапе 402 средство 102 анализа видео может декодировать видео файл, такой как видео файл 108 (1), для получения видеокадра и звуковых данных, связанных с видеокадром. Модуль 210 видеодекодера может использовать различные кодеки для декодирования видео файлов, такие как H.264, MPEG 2, MPEG 4 и т.д. Связанные звуковые данные могут иметь ту же самую продолжительность времени, как видеокадр, например, 1/30-ю часть секунды или 1/60-ю часть секунды. Однако, в некоторых вариантах осуществления модуль 210 видеодекодера может конфигурироваться для получения видеокадра без получения связанных с ним звуковых данных, или наоборот.
[0073] На этапе 404 средство 102 анализа видео может анализировать по меньшей мере одну из видео особенностей видеокадра или звуковых особенностей звуковых данных для получения оценок особенностей. Средство 102 анализа видео может выполнять такой анализ, основываясь на одном или большем количестве локальных правил. В различных вариантах осуществления одна или большее количество особенностей, которые анализируются, могут включать в себя особенности высокого уровня и/или особенности низкого уровня. Например, особенности низкого уровня могут включать в себя такие особенности, как качество экспозиции, качество насыщенности, дрожание видеокадров, средняя яркость, цветовая энтропия и/или различия гистограмм между видеокадрами. Особенности высокого уровня могут включать в себя такие особенности, как количество, расположение и/или характерные особенности лица для лиц, которые обнаружены в видеокадрах.
[0074] На этапе 406 средство 102 анализа видео может сохранять оценки особенностей для видеокадра в качестве метаданных для видеокадра. В различных вариантах осуществления средство 102 анализа видео может сохранять метаданные в хранилище 226 данных. Такие метаданные могут уменьшать или устранять повторный анализ видеокадров во время будущего определения важности соответствующих видео файлов или видео фрагментов, которое вовлекает те же самые видеокадры.
[0075] На этапе 408 принятия решений средство 102 анализа видео может определять, существуют или нет дополнительные кадры видео файла для анализа. Другими словами, средство 102 анализа видео может определять, декодированы или нет все видеокадры и связанные с ними звуковые данные видео файла. Если средство 102 анализа видео определяет, что существуют дополнительные кадры для анализа («да» на этапе 408 принятия решений), то процесс 400 может переходить назад на этап 402. На этапе 402 средство 102 анализа видео может получать следующий видеокадр и связанные с ним данные из видео файла. Однако, если средство 102 анализа видео решает на этапе 408 принятия решений, что никакие дополнительные видеокадры видео файла не должны анализироваться («нет» на этапе 408 принятия решений), то процесс 400 может переходить на этап 410.
[0076] На этапе 410 средство 102 анализа видео может применять по меньшей мере одно глобальное правило к одной или большему количеству результирующих особенностей. Например, человека, лицо которого появляется в группе с самой высокой оценкой важности группы, можно считать главным героем. Основываясь на такой информации, модуль 214 анализа высокого уровня может применять глобальное правило к видеокадрам, так что оценки важности лица видеокадров, которые показывают главного героя, могут дополнительно оцениваться.
[0077] На этапе 412 средство 102 анализа видео может объединять все оценки особенностей для каждого видеокадра видео файла для извлечения соответствующей оценки важности кадра для каждого видеокадра. Например, средство 102 анализа видео может усреднять набор нормированных оценок особенностей для каждого видеокадра для получения оценки важности кадра для каждого видеокадра.
[0078] На этапе 414 средство 102 анализа видео может сохранять метаданные для видео файла. Метаданные могут включать в себя оценки важности видеокадров для видеокадров видео файла и/или оценки особенностей для каждого видеокадра.
[0079] На этапе 416 средство 102 анализа видео может сегментировать видео файл на видео фрагменты, основываясь на оценках важности видеокадра для видеокадров. В некотором варианте осуществления средство 102 анализа видео может использовать вычисление оконной массы для сегментации видео файла на видео фрагменты. В других вариантах осуществления средство 102 анализа видео может использовать пересечения нуля для перемещений масштабирования и вертикального линейного перемещения из данных перемещения, записанных в видео файле, для сегментации видео файла на видео фрагменты.
[0080] На этапе 418 средство 102 анализа видео может вычислять значение важности фрагмента для каждого видео фрагмента видео файла. В различных вариантах осуществления средство 102 анализа видео может генерировать значение важности фрагмента, основываясь на нормированных оценках важности кадра видеокадров в видео фрагменте. В некоторых случаях модуль 218 вычисления важности может также применять смещение к одной или большему количеству оценок особенностей во время генерации значений важности фрагмента для видео фрагментов.
[0081] На этапе 420 средство 102 анализа видео может ранжировать видео фрагменты согласно их значениям важности фрагмента. Например, видео фрагменты могут ранжироваться от наибольшей важности до наименьшей важности, или наоборот. Когда видео фрагменты ранжированы, средство 102 анализа видео может отображать эскизные представления видео фрагментов. Выбор эскизного представления может побуждать медиапроигрыватель 122 воспроизводить соответствующий видео фрагмент, или другие приложения - обеспечивать соответствующий видео фрагмент для совместного использования и/или редактирования. Альтернативно, средство 102 анализа видео может обеспечивать данные ранжирования к другому приложению, так что приложение может отображать эскизные представления ранжированных видео фрагментов.
[0082] Фиг. 5 - последовательность операций, которая показывает примерный процесс 500 для использования основанного на правилах анализа видео для анализа особенностей видео файлов для ранжирования видео файлов, основываясь на их важности. На этапе 502 средство 102 анализа видео может получать видео файл из коллекции видео файлов, такой как видео коллекция 106. В различных вариантах осуществления средство 102 анализа видео может получать видео файл, основываясь на вводе выбора от пользователя.
[0083] На этапе 504 средство 102 анализа видео может вычислять значение важности видео из видео файла, основываясь на оценках важности видеокадра для видеокадров в видео файле. Средство 102 анализа видео может вычислять каждую оценку важности кадра из видео файла, как описано на этапах 402-412 процесса 400, показанного на фиг. 4. В различных вариантах осуществления средство 102 анализа видео может усреднять оценки важности видеокадров для получения значения важности видео из видео файла. В альтернативных вариантах осуществления средство 102 анализа видео может конфигурироваться для усреднения оценок важности видеокадров одного или большего количества видео фрагментов видео файла с самой высокой важностью для получения значения важности для видео файла. В некоторых вариантах осуществления вычисление значения важности видео из видео файла может также включать в себя смещение одной или большего количества оценок важности, которые связаны с кадрами.
[0084] На этапе 506 принятия решений средство 102 анализа видео может определять, должны или нет анализироваться дополнительные видео файлы. Средство 102 анализа видео может делать такое определение, основываясь на вводе выбора, принятого от пользователя. Если средство 102 анализа видео определяет, что существуют дополнительные видео файлы для анализа («да» на этапе 506 принятия решений), то процесс 500 может переходить назад на этап 502. На этапе 502 средство 102 анализа видео может получать другой видео файл из коллекции видео файлов для дополнительного анализа.
[0085] Однако, если средство 102 анализа видео определяет, что нет никаких дополнительных видео файлов для анализа («нет» на этапе 506 принятия решений), то процесс 500 может переходить на этап 508. На этапе 508 средство 102 анализа видео может ранжировать видео файлы, которые проанализированы, основываясь на соответствующих значениях важности видео. Например, видео файлы могут ранжироваться от наибольшей важности до наименьшей важности, или наоборот. Когда видео файлы ранжированы, средство 102 анализа видео может отображать эскизные представления видео файлов, в которых выбор эскизного представления может побуждать медиапроигрыватель 122 воспроизводить соответствующий видео файл, или другие приложения - обеспечивать соответствующий видео фрагмент для совместного использования и/или редактирования. Альтернативно, средство 102 анализа видео может обеспечивать данные ранжирования к другому приложению, так что приложение может отображать эскизные представления ранжированных видео файлов.
[0086] В некоторых вариантах осуществления средство 102 анализа видео может сначала пытаться ранжировать видео фрагменты видео файла и/или видео файлы, основываясь на оценках особенности, которые получены для особенностей высокого уровня видеокадров. В таких вариантах осуществления средство 102 анализа видео может прибегать к получению оценок особенности и для особенностей высокого уровня, и для особенностей низкого уровня видеокадров для создания ранжирования, когда начальная попытка заканчивается неудачно из-за недостаточного наличия особенностей высокого уровня на видеокадрах.
[0087] Фиг. 6 - последовательность операций, которая показывает примерный процесс 600 для вычисления оценки важности лица для видеокадра. На этапе 602 модуль 214 анализа высокого уровня может выполнять обнаружение лиц на видеокадре для обнаружения одного или большего количества лиц. Обнаруженное лицо может быть направлено в сторону камеры, которая записала видеокадр, или находиться боком по отношению к камере. Основываясь на этом обнаружении, модуль 214 анализа высокого уровня может генерировать список обнаруженных лиц с их расположением на видеокадре, площадью видеокадра, которая закрывается каждым лицом, и оценкой уверенности обнаружения для каждого лица, которая указывает уверенность обнаружения.
[0088] На этапе 604 модуль 214 анализа высокого уровня может выполнять отслеживание лиц для отслеживания одного или большего количества лиц. В различных вариантах осуществления модуль 214 анализа высокого уровня может отслеживать человеческие лица по множеству видеокадров. Таким образом модуль 214 анализа высокого уровня может устанавливать набор лиц, которые присутствуют в видео файле, а так же отслеживать частоту, с которой каждое лицо появляется в видео файле.
[0089] На этапе 606 модуль 214 анализа высокого уровня может определять, должно или нет основанное на характерных особенностях лица смещение оценки назначаться видеокадру. В различных вариантах осуществления данное определение может выполняться, основываясь на том, присутствуют или отсутствуют одна или большее количество характерных особенностей лица на видеокадре. Таким образом, если модуль 214 анализа высокого уровня определяет, что должно назначаться основанное на характерных особенностях лица смещение оценки («да» на этапе 606 принятия решений), то процесс 600 может переходить на этап 608. Однако, если модуль 214 анализа высокого уровня определяет, что основанное на характерных особенностях лица смещение оценки не должно назначаться («нет» на этапе 606 принятия решений), то процесс 600 может продолжаться непосредственно на этапе 610.
[0090] На этапе 608 модуль 214 анализа высокого уровня может назначать смещение оценки видеокадра, основываясь на характерных особенностях лица по меньшей мере для одного лица на видеокадре. Характерные особенности лица могут включать в себя размер лица, перемещение лица и/или присутствие или отсутствие определенных характерных особенностей лица (например, есть улыбка или нет, закрыты/открыты глаза и т.д.). Например, лицо на видеокадре, размер которого меньше минимального порогового значения размера или больше максимального порогового значения размера, может привести к назначению отрицательного смещения оценки с помощью модуля 214 анализа высокого уровня. В другом примере оценка важности видеокадра, на котором показано лицо конкретного человека, может положительно или отрицательно смещаться согласно расстоянию от лица до центра видеокадра вдоль оси (например, оси x или оси y), так что лицо, которое ближе к центру, приводит к более высокой важности для видеокадра, и наоборот. Отрицательное смещение оценки может быть весовым коэффициентом, который уменьшает оценку важности лица для видеокадра. В дополнительном примере модуль 214 анализа высокого уровня может назначать положительное смещение оценки для каждого лица, которое улыбается и/или имеет открытые глаза.
[0091] На этапе 610 модуль 214 анализа высокого уровня может выполнять по меньшей мере одно из распознавания лиц или группировки лиц по меньшей мере по отношению к одному лицу. При группировке лиц модуль 214 анализа высокого уровня может группировать лица, которые отслеживаются, для определения, принадлежат или нет лица, которые обнаружены на различных видеокадрах, тому же самому человеку. При распознавании лиц модуль 214 анализа высокого уровня может использовать алгоритм распознавания лиц для установления соответствия каждого человеческого лица, которое обнаружено на видеокадре, известному идентификатору человека.
[0092] На этапе 612 модуль 214 анализа высокого уровня может идентифицировать одного или большее количество главных героев, основываясь по меньшей мере на одном из данных отслеживания лиц или данных распознавания лиц. Например, количество лиц в каждой группе прямо пропорционально частоте появления лица в видео файле. Дополнительно, более высокая частота появления указывает более высокую важность человека с данным лицом, и наоборот. Соответственно, лицо, принадлежащее группе с самым большим количеством лиц, может определяться с помощью модуля 214 анализа высокого уровня, как принадлежащее главному герою. В другом примере главный герой может идентифицироваться, когда лицо, определяемое, как принадлежащее главному герою, обнаружено, как присутствующее на видеокадре, с помощью алгоритма распознавания лиц.
[0093] На этапе 614 модуль 214 анализа высокого уровня может назначать положительное смещение оценки видеокадра для каждого присутствия главного героя на видеокадре. Положительная оценка особенности может поднимать оценку важности лица, которая вычислена для видеокадра. Положительное смещение оценки может быть весовым коэффициентом, который увеличивает оценку важности лица для видеокадра.
[0094] На этапе 616 модуль 214 анализа высокого уровня может вычислять оценку важности лица для видеокадра. Оценка важности лица может вычисляться пропорционально размеру и/или перемещению каждого лица на видеокадре. Вычисление оценки важности лица может вычисляться, основываясь на положительных и/или отрицательных смещениях оценки.
[0095] Фиг. 7 - последовательность операций, которая показывает примерный процесс 700 для определения важности фрагментов в пределах видео с помощью анализа перемещения характерных точек. На этапе 702 модуль 216 анализа перемещения может получать видеокадр видео файла, такого как видео файл 108 (1). Модуль 210 видеодекодера может декодировать видеокадр из видео файла для анализа с помощью модуля 216 анализа перемещения.
[0096] На этапе 704 принятия решений модуль 216 анализа перемещения может определять, достигнут или нет конец видео файла. Если модуль 216 анализа перемещения определяет, что конец видео файла не достигнут («нет» на этапе 704 принятия решений), то процесс 700 может продолжаться на этапе 706.
[0097] На этапе 706 модуль 216 анализа перемещения может обнаруживать характерные точки на видеокадре. В различных вариантах осуществления модуль 216 анализа перемещения может субдискретизировать видеокадр и создавать пирамиду субдискретизированных изображений меньших размеров. Субдискретизированные изображения затем сравниваются с помощью модуля 216 анализа перемещения для определения общих точек (то есть характерных точек) среди субдискретизированных изображений.
[0098] На этапе 708 принятия решений модуль 216 анализа перемещения может определять, является или нет видеокадр первым видеокадром видео файла. Соответственно, если модуль 216 анализа перемещения определяет, что видеокадр является первым видеокадром («да» на этапе 708 принятия решений), то процесс 700 может переходить назад на этап 702. После возвращения на этап 702 модуль 216 анализа перемещения может получать другой видеокадр видео файла. Однако, если модуль 216 анализа перемещения определяет, что видеокадр не является первым видеокадром видео («нет» на этапе 708 принятия решений), то процесс 700 может переходить на этап 710.
[0099] На этапе 710 модуль 216 анализа перемещения может устанавливать соответствие характерных точек на видеокадре дополнительному набору характерных точек в предыдущем видеокадре видео файла. В различных вариантах осуществления модуль 216 анализа перемещения может выполнять установление соответствия с помощью определения преобразования, которое выравнивает два смежных кадра таким образом, чтобы максимальное количество характерных точек соответствовало. По меньшей мере в одном варианте осуществления преобразование может выполняться, используя геометрическое соответствие, которое является воплощением надежной оценки параметра.
[0100] На этапе 712 модуль 216 анализа перемещения может вычислять матрицу гомографического преобразования, которая описывает перемещение характерных точек между видеокадрами. По меньшей мере в некоторых вариантах осуществления модуль 216 анализа перемещения может использовать алгоритм случайных выборок и согласования (RANSAC) для получения матрицы гомографического преобразования.
[0101] На этапе 714 модуль 216 анализа перемещения может вычислять данные перемещения для видеокадра из матрицы гомографического преобразования. В различных вариантах осуществления модуль 216 анализа перемещения может извлекать величину и направление компонентов масштабирования и вертикального перемещения, используя матрицу гомографического преобразования. Эти величины и направления представляют преднамеренное перемещение камеры, которое записано на двух смежных кадрах. Впоследствии, процесс 700 может возвращаться назад на этап 702, так что модуль 216 анализа перемещения может получать другой видеокадр видео файла для обработки.
[0102] Возвращаясь к этапу 704 принятия решений, если модуль 216 анализа перемещения определяет, что достигнут конец видео файла («да» на этапе 704 принятия решений), то процесс 700 может продолжиться на этапе 716. На этапе 716 модуль 216 анализа перемещения может вычислять скользящее среднее для данных перемещения видеокадров и перемещения дрожания кадра для каждого видеокадра. Данные перемещения одного или большего количества видеокадров видео файла могут объединяться до вычисления. В различных вариантах осуществления модуль 216 анализа перемещения может определять перемещение дрожания камеры, которая записала видеокадры, с помощью вычисления скользящего среднего данных перемещения векторов перемещения видеокадров, и вычитания преднамеренного перемещения камеры из скользящего среднего данных перемещения. Вычисление скользящего среднего данных перемещения устраняет локальную дисперсию и сохраняет долгосрочные тенденции, которые представляют преднамеренное перемещение. Другими словами.
[0103] На этапе 718 модуль 216 анализа перемещения может устанавливать зоны пересечения нуля для поиска информации локальных максимумов и минимумов, то есть локальных максимумов и минимумов для данных перемещения. Информация локальных максимумов и минимумов может указывать точки перехода к другой сцене для видео файла.
[0104] На этапе 720 модуль 216 анализа перемещения может сегментировать видео файл на видео фрагменты, основываясь на информации локальных максимумов и минимумов. Кроме того, модуль 216 анализа перемещения может объединять и усреднять величины для перемещений масштабирования и панорамирования для каждого видео фрагмента. Величина ускорения, представленного средним значением величин перемещения масштабирования и панорамирования для видео фрагмента, может использоваться с помощью модуля 216 анализа перемещения для назначения оценки важности перемещения видео фрагменту. Впоследствии, модуль 216 анализа перемещения может определять один или большее количество видео фрагментов, которые имеют самые высокие оценки важности перемещения, как важные фрагменты видео файла.
[0105] Использование методик, описанных в данной работе, может давать возможность пользователю ранжировать видео файлы, основываясь на их важности для пользователя. Основываясь на таком ранжировании, пользователь может решать, какие видео файлы сохранить, а какие видео файлы удалить. В некоторых случаях пользователь может также использовать ранжирование видео файлов для решения, перенести или нет определенные видео файлы на веб-сайт совместного использования в Интернет. Методики, описанные в данной работе, могут также представлять эскизные представления, которые представляют важные фрагменты видео файла, так что пользователь может указывать сразу интересные части видео файла. Такая информация может помогать пользователю при редактировании видео файла для улучшения качества содержимого или выделения конкретных фрагментов видео файла.
Заключение
[0106] В заключение, хотя различные варианты осуществления описаны на языке, определенном для структурных признаков и/или методологических действий, нужно подразумевать, что объем изобретения, определяемый в прилагаемой формуле изобретения, не обязательно ограничен конкретными признаками или описанными действиями. Вместо этого, конкретные признаки и действия раскрыты в качестве примерных форм воплощения заявляемого изобретения.
Claims (55)
1. Машиночитаемый носитель, хранящий машиноисполняемые команды, которые исполняются для предписания одному или более процессорам выполнять действия, содержащие этапы, на которых:
декодируют (402) видеофайл для получения по меньшей мере видеокадра или видеокадра и звуковых данных, связанных с видеокадром;
анализируют (404) одну или более высокоуровневых особенностей по меньшей мере видеокадра или видеокадра и звуковых данных, связанных с видеокадром, на основе по меньшей мере одного из локального правила, применяемого во время формирования результатов анализа особенностей для видеокадра, и глобального правила, применяемого во время формирования результатов анализа особенностей для видеофайла, для получения одной или более оценок особенностей для видеокадра, причем локальное правило влияет на назначение важности звуковых данных для видеокадра, представляющего собой одиночный видеокадр, на основе звуковых данных в этом одиночном видеокадре, а глобальное правило влияет на назначение важности звуковых данных для видеофайла на основе звуковых данных в множестве видеокадров в видеофайле, который включает в себя видеокадр, при этом упомянутые одна или более высокоуровневых особенностей включают в себя по меньшей мере одну особенность, которая связана с расположением человеческого лица в видеокадре;
объединяют (412) эти одну или более оценок особенностей видеокадра для получения оценки важности кадра для видеокадра;
сегментируют (416) видеофайл на видеофрагменты с разными значениями важности фрагмента, основываясь, по меньшей мере, на оценках важности кадра, соответствующих видеокадру, и других оценках важности кадра, соответствующих дополнительным видеокадрам видеофайла;
ранжируют (420) видеофрагменты согласно значениям важности фрагментов; и
когда попытка ранжирования заканчивается неудачно из-за недостаточного наличия высокоуровневых особенностей в видеокадре и дополнительных видеокадрах видеофайла, получают оценки особенностей как для высокоуровневых особенностей, так и для низкоуровневых особенностей видеокадров для выполнения ранжирования, причем низкоуровневые особенности включают в себя по меньшей мере одно из качества экспозиции, качества насыщенности, разнообразия оттенков, дрожания видеокадров, средней яркости, цветовой энтропии и различий гистограмм между смежными видеокадрами.
2. Машиночитаемый носитель по п. 1, при этом действия дополнительно содержат этапы, на которых:
вычисляют значение важности видео для видеофайла, основываясь, по меньшей мере, на оценках важности кадра, соответствующих всем видеокадрам в видеофайле; и
ранжируют видеофайл по отношению к дополнительным видеофайлам, основываясь, по меньшей мере, на значении важности видео, соответствующем видеофайлу, и других значениях важности видео, соответствующих дополнительным видеофайлам.
3. Машиночитаемый носитель по п. 1, при этом анализ включает в себя этапы, на которых:
выполняют обнаружение лиц в видеокадре для обнаружения одного или более человеческих лиц;
выполняют отслеживание лиц для отслеживания этих одного или более человеческих лиц;
назначают отрицательное или положительное смещение оценки видеокадру, основываясь, по меньшей мере, на размере лица, расположении лица или одной или более характерных особенностях лица для по меньшей мере одного человеческого лица в видеокадре, каковые одна или более характерных особенностей лица включают в себя отсутствие или присутствие по меньшей мере одного из улыбки и открытых глаз на по меньшей мере одном человеческом лице;
выполняют по меньшей мере одно из распознавания лиц и группирования лиц в отношении по меньшей мере одного человеческого лица из упомянутых одного или более человеческих лиц;
идентифицируют одного или более главных героев, основываясь на по меньшей мере одном из данных группирования лиц и данных распознавания лиц;
назначают дополнительно положительное смещение оценки видеокадру в случае присутствия главного героя в видеокадре; и
вычисляют оценку важности лица для видеокадра, которая учитывает отрицательное смещение оценки и положительное смещение оценки.
4. Компьютерно-реализуемый способ анализа видеофайла для ранжирования фрагментов видеофайла, содержащий этапы, на которых:
декодируют (402) видеофайл для получения по меньшей мере видеокадра или видеокадра и звуковых данных, связанных с видеокадром;
анализируют (404) одну или более высокоуровневых особенностей по меньшей мере видеокадра или видеокадра и звуковых данных, связанных с видеокадром, на основе по меньшей мере одного из локального правила, применяемого для видеокадра, и глобального правила, применяемого для видеофайла, для получения одной или более оценок особенностей для видеокадра, причем локальное правило влияет на назначение важности звуковых данных для видеокадра, представляющего собой одиночный видеокадр, на основе звуковых данных в этом одиночном видеокадре, а глобальное правило влияет на назначение важности звуковых данных для видеофайла на основе звуковых данных в множестве видеокадров в видеофайле, который включает в себя видеокадр, при этом упомянутые одна или более высокоуровневых особенностей включают в себя по меньшей мере одну особенность, которая связана с расположением человеческого лица в видеокадре;
объединяют (412) эти одну или более оценок особенностей видеокадра для получения оценки важности кадра для видеокадра;
сегментируют (416) видеофайл на видеофрагменты с разными значениями важности фрагмента, основываясь, по меньшей мере, на оценках важности кадра, соответствующих всем видеокадрам в видеофайле, или данных перемещения, относящихся к множеству видеокадров в видеофайле;
ранжируют (420) видеофрагменты согласно значениям важности фрагментов;
ранжируют (508) видеофайл относительно дополнительных видеофайлов, основываясь, по меньшей мере, на значениях важности видео, соответствующих видеофайлу, и других значениях важности видео, соответствующих этим дополнительным видеофайлам; и
когда попытка ранжирования заканчивается неудачно из-за недостаточного наличия высокоуровневых особенностей в видеокадре и дополнительных видеокадрах видеофайла, получают оценки особенностей как для высокоуровневых особенностей, так и для низкоуровневых особенностей видеокадров для выполнения ранжирования, причем низкоуровневые особенности включают в себя по меньшей мере одно из качества экспозиции, качества насыщенности, разнообразия оттенков, дрожания видеокадров, средней яркости, цветовой энтропии и различий гистограмм между смежными видеокадрами.
5. Компьютерно-реализуемый способ по п. 4, в котором сегментация видеофайла на основе, по меньшей мере, данных перемещения, связанных с множеством видеокадров в видеофайле, включает в себя этапы, на которых:
обнаруживают (706) характерные точки в видеокадре видеофайла посредством обнаружения общих точек между множеством субдискретизированных изображений;
сопоставляют (710) характерные точки в видеокадре с дополнительным набором характерных точек в предыдущем видеокадре видеофайла;
вычисляют (712) матрицу гомографического преобразования, которая описывает перемещение характерных точек между видеокадрами;
вычисляют (714) данные перемещения для видеокадра исходя из матрицы гомографического преобразования, причем данные перемещения включают в себя величину и направление компонентов масштабирования и вертикального линейного перемещения характерных точек;
объединяют данные перемещения для видеокадра с данными перемещения для одного или более оставшихся кадров в видеофайле;
вычисляют (716) скользящее среднее для данных перемещения видеокадров в видеофайле;
устанавливают (718) зоны пересечения нуля для поиска информации локальных максимумов и минимумов для данных перемещения, основываясь, по меньшей мере, на скользящем среднем; и
определяют (720) видеофрагменты видеофайла, основываясь, по меньшей мере, на информации локальных максимумов и минимумов данных перемещения.
6. Компьютерно-реализуемый способ по п. 4, в котором анализ включает в себя этапы, на которых:
выполняют (602) обнаружение лиц в видеокадре для обнаружения одного или более человеческих лиц;
выполняют (604) отслеживание лиц для отслеживания этих одного или более человеческих лиц;
назначают (608) отрицательное смещение оценки или положительное смещение оценки видеокадру, основываясь, по меньшей мере, на размере лица, расположении лица или одной или более характерных особенностях лица по меньшей мере одного человеческого лица в видеокадре, причем эти одна или более характерных особенностей лица включают в себя отсутствие или присутствие по меньшей мере одного из улыбки и открытых глаз на по меньшей мере одном человеческом лице;
выполняют (610) по меньшей мере одно из распознавания лиц и группирования лиц в отношении по меньшей мере одного человеческого лица из упомянутых одного или более человеческих лиц;
идентифицируют (612) одного или более главных героев, основываясь на по меньшей мере одном из данных группирования лиц и данных распознавания лиц;
назначают (614) положительное смещение оценки видеокадру в случае присутствия главного героя в видеокадре; и
вычисляют (616) оценку важности лица для видеокадра, которая учитывает отрицательное смещение оценки и положительное смещение оценки.
7. Вычислительная система, выполненная с возможностью анализа видеофайла для ранжирования фрагментов видеофайла, при этом вычислительная система содержит:
один или более процессоров;
память, которая включает в себя множество машиноисполняемых компонентов, которые являются исполняемыми одним или более процессорами для выполнения множества действий, каковое множество действий содержат действия, чтобы:
декодировать (402) видеофайл для получения по меньшей мере видеокадра или видеокадра и звуковых данных, связанных с видеокадром;
анализировать (404) одну или более высокоуровневых особенностей по меньшей мере видеокадра или видеокадра и звуковых данных, связанных с видеокадром, на основе по меньшей мере одного из локального правила, применяемого для видеокадра, и глобального правила, применяемого для видеофайла, для получения одной или более оценок особенностей для видеокадра, причем локальное правило влияет на назначение важности звуковых данных для видеокадра, представляющего собой одиночный видеокадр, на основе звуковых данных в этом одиночном видеокадре, а глобальное правило влияет на назначение важности звуковых данных для видеофайла на основе звуковых данных в множестве видеокадров в видеофайле, который включает в себя видеокадр, при этом упомянутые одна или более высокоуровневых особенностей включают в себя по меньшей мере одну особенность, которая связана с расположением человеческого лица в видеокадре;
объединять (412) эти одну или более оценок особенностей видеокадра для получения оценки важности кадра для видеокадра;
сегментировать (418) видеофайл на видеофрагменты с разной важностью фрагмента, основываясь, по меньшей мере, на данных перемещения, связанных с видеокадром и дополнительными видеокадрами в видеофайле;
ранжировать (420) видеофрагменты согласно значениям важности фрагмента для видеофрагментов, которые вычисляются, основываясь, по меньшей мере, на оценках важности кадра, соответствующих видеокадру и дополнительным видеокадрам в видеофайле; и
когда попытка ранжирования заканчивается неудачно из-за недостаточного наличия высокоуровневых особенностей в видеокадре и дополнительных видеокадрах видеофайла, получать оценки особенностей как для высокоуровневых особенностей, так и для низкоуровневых особенностей видеокадров для выполнения ранжирования, причем низкоуровневые особенности включают в себя по меньшей мере одно из качества экспозиции, качества насыщенности, разнообразия оттенков, дрожания видеокадров, средней яркости, цветовой энтропии и различий гистограмм между смежными видеокадрами.
8. Система по п. 7, в которой действия дополнительно содержат:
вычисление значения важности видео для видеофайла, основываясь, по меньшей мере, на оценках важности кадра, соответствующих видеокадрам в видеофайле; и
ранжирование видеофайла по отношению к дополнительным видеофайлам, основываясь, по меньшей мере, на значении важности видео, соответствующем видеофайлу, и других значениях важности видео, соответствующих дополнительным видеофайлам.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/303,466 | 2014-06-12 | ||
US14/303,466 US10664687B2 (en) | 2014-06-12 | 2014-06-12 | Rule-based video importance analysis |
PCT/US2015/034992 WO2015191650A1 (en) | 2014-06-12 | 2015-06-10 | Rule-based video importance analysis |
Publications (3)
Publication Number | Publication Date |
---|---|
RU2016148407A RU2016148407A (ru) | 2018-06-09 |
RU2016148407A3 RU2016148407A3 (ru) | 2019-01-22 |
RU2693906C2 true RU2693906C2 (ru) | 2019-07-05 |
Family
ID=53488465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2016148407A RU2693906C2 (ru) | 2014-06-12 | 2015-06-10 | Основанный на правилах анализ важности видео |
Country Status (11)
Country | Link |
---|---|
US (1) | US10664687B2 (ru) |
EP (1) | EP3155557A1 (ru) |
JP (1) | JP6694829B2 (ru) |
KR (1) | KR102354692B1 (ru) |
CN (1) | CN106462744B (ru) |
AU (1) | AU2015274708B2 (ru) |
BR (1) | BR112016028586B1 (ru) |
CA (1) | CA2948529A1 (ru) |
MX (1) | MX2016016293A (ru) |
RU (1) | RU2693906C2 (ru) |
WO (1) | WO2015191650A1 (ru) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016081856A1 (en) * | 2014-11-21 | 2016-05-26 | Whip Networks, Inc. | Media management and sharing system |
US9607224B2 (en) * | 2015-05-14 | 2017-03-28 | Google Inc. | Entity based temporal segmentation of video streams |
US9832484B2 (en) * | 2015-05-20 | 2017-11-28 | Texas Instruments Incorporated | Still block detection in a video sequence |
US9911202B2 (en) * | 2015-08-24 | 2018-03-06 | Disney Enterprises, Inc. | Visual salience of online video as a predictor of success |
US10602157B2 (en) | 2015-09-11 | 2020-03-24 | Facebook, Inc. | Variable bitrate control for distributed video encoding |
US10063872B2 (en) | 2015-09-11 | 2018-08-28 | Facebook, Inc. | Segment based encoding of video |
US10375156B2 (en) | 2015-09-11 | 2019-08-06 | Facebook, Inc. | Using worker nodes in a distributed video encoding system |
US10506235B2 (en) | 2015-09-11 | 2019-12-10 | Facebook, Inc. | Distributed control of video encoding speeds |
US10341561B2 (en) * | 2015-09-11 | 2019-07-02 | Facebook, Inc. | Distributed image stabilization |
US10499070B2 (en) | 2015-09-11 | 2019-12-03 | Facebook, Inc. | Key frame placement for distributed video encoding |
US10602153B2 (en) | 2015-09-11 | 2020-03-24 | Facebook, Inc. | Ultra-high video compression |
US10002435B2 (en) * | 2016-01-29 | 2018-06-19 | Google Llc | Detecting motion in images |
CN108605092B (zh) * | 2016-02-18 | 2020-06-26 | Imint影像智能有限公司 | 用于视频处理的系统和方法 |
US10432983B2 (en) * | 2016-04-04 | 2019-10-01 | Twitter, Inc. | Live video classification and preview selection |
US10402436B2 (en) * | 2016-05-12 | 2019-09-03 | Pixel Forensics, Inc. | Automated video categorization, value determination and promotion/demotion via multi-attribute feature computation |
US10347294B2 (en) * | 2016-06-30 | 2019-07-09 | Google Llc | Generating moving thumbnails for videos |
US10474717B2 (en) | 2016-07-21 | 2019-11-12 | Twitter, Inc. | Live video streaming services with machine-learning based highlight replays |
JP6948787B2 (ja) * | 2016-12-09 | 2021-10-13 | キヤノン株式会社 | 情報処理装置、方法およびプログラム |
JP6866142B2 (ja) * | 2016-12-09 | 2021-04-28 | キヤノン株式会社 | プログラム、画像処理装置、および画像処理方法 |
US10734027B2 (en) * | 2017-02-16 | 2020-08-04 | Fusit, Inc. | System and methods for concatenating video sequences using face detection |
EP3396963B1 (en) | 2017-04-25 | 2021-04-07 | Accenture Global Solutions Limited | Dynamic media content rendering |
EP3396596B1 (en) * | 2017-04-25 | 2020-08-19 | Accenture Global Solutions Limited | Heat ranking of media objects |
EP3396964B1 (en) * | 2017-04-25 | 2020-07-22 | Accenture Global Solutions Ltd | Dynamic content placement in a still image or a video |
US10409859B2 (en) * | 2017-05-15 | 2019-09-10 | Facebook, Inc. | Video heat maps personalized for online system users |
CN107437083B (zh) * | 2017-08-16 | 2020-09-22 | 广西荷福智能科技有限公司 | 一种自适应池化的视频行为识别方法 |
CN107578000B (zh) * | 2017-08-25 | 2023-10-31 | 百度在线网络技术(北京)有限公司 | 用于处理图像的方法及装置 |
EP3622513A1 (en) * | 2017-10-03 | 2020-03-18 | Google LLC | Microvideo system, format, and method of generation |
US10628486B2 (en) * | 2017-11-15 | 2020-04-21 | Google Llc | Partitioning videos |
EP3528196A1 (en) | 2018-02-16 | 2019-08-21 | Accenture Global Solutions Limited | Dynamic content generation |
CN108337535B (zh) * | 2018-03-21 | 2020-12-29 | 广州视源电子科技股份有限公司 | 客户端视频的转发方法、装置、设备和存储介质 |
US10942816B1 (en) * | 2018-09-06 | 2021-03-09 | NortonLifeLock Inc. | Systems and methods for dynamically adjusting a backup policy |
EP3672256A1 (en) | 2018-12-20 | 2020-06-24 | Accenture Global Solutions Limited | Dynamic media placement in video feed |
US11514713B2 (en) * | 2019-05-31 | 2022-11-29 | Apple Inc. | Face quality of captured images |
CN110087145B (zh) * | 2019-06-06 | 2020-04-21 | 北京字节跳动网络技术有限公司 | 用于处理视频的方法和装置 |
US11373407B2 (en) * | 2019-10-25 | 2022-06-28 | International Business Machines Corporation | Attention generation |
CN111125022A (zh) * | 2019-11-15 | 2020-05-08 | 浙江大华技术股份有限公司 | 录像覆盖权重的确定方法、装置、设备和存储介质 |
WO2021174118A1 (en) * | 2020-02-26 | 2021-09-02 | Nvidia Corporation | Object detection using image alignment for autonomous machine applications |
CN114697700B (zh) * | 2020-12-28 | 2024-07-16 | 北京小米移动软件有限公司 | 视频剪辑方法、视频剪辑装置及存储介质 |
CN112995676A (zh) * | 2021-04-25 | 2021-06-18 | 北京金和网络股份有限公司 | 一种音视频压缩方法、装置、设备、系统及存储介质 |
US11917206B2 (en) | 2021-12-17 | 2024-02-27 | Lenovo (Singapore) Pte. Ltd. | Video codec aware radio access network configuration and unequal error protection coding |
US11824653B2 (en) | 2021-12-17 | 2023-11-21 | Lenovo (Singapore) Pte. Ltd. | Radio access network configuration for video approximate semantic communications |
US20240096102A1 (en) * | 2022-09-17 | 2024-03-21 | Nvidia Corporation | Freespace detection using machine learning for autonomous systems and applications |
CN115396622B (zh) * | 2022-10-28 | 2023-03-24 | 广东电网有限责任公司中山供电局 | 一种低码率视频重构的电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070081586A1 (en) * | 2005-09-27 | 2007-04-12 | Raveendran Vijayalakshmi R | Scalability techniques based on content information |
RU2339091C2 (ru) * | 2003-06-23 | 2008-11-20 | Сони Пикчерс Энтертейнмент Инк. | Вставка идентификационной метки в данные |
EP2112619B1 (en) * | 2008-04-22 | 2012-07-25 | Universität Stuttgart | Video data processing |
WO2013030634A1 (en) * | 2011-08-31 | 2013-03-07 | Rocks International Group Pte Ltd | Virtual advertising platform |
US20140079297A1 (en) * | 2012-09-17 | 2014-03-20 | Saied Tadayon | Application of Z-Webs and Z-factors to Analytics, Search Engine, Learning, Recognition, Natural Language, and Other Utilities |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001160066A (ja) | 1998-12-25 | 2001-06-12 | Matsushita Electric Ind Co Ltd | データ処理装置、データ処理方法および記録媒体、並びに該データ処理方法をコンピュータに実行させるためのプログラム |
SE9902328A0 (sv) | 1999-06-18 | 2000-12-19 | Ericsson Telefon Ab L M | Förfarande och system för att alstra sammanfattad video |
EP1182584A3 (en) | 2000-08-19 | 2005-12-28 | Lg Electronics Inc. | Method and apparatus for video skimming |
US20020167537A1 (en) | 2001-05-11 | 2002-11-14 | Miroslav Trajkovic | Motion-based tracking with pan-tilt-zoom camera |
US7143352B2 (en) | 2002-11-01 | 2006-11-28 | Mitsubishi Electric Research Laboratories, Inc | Blind summarization of video content |
US7738778B2 (en) | 2003-06-30 | 2010-06-15 | Ipg Electronics 503 Limited | System and method for generating a multimedia summary of multimedia streams |
JP4453976B2 (ja) | 2004-03-30 | 2010-04-21 | 正彦 谷内田 | 画像生成装置、画像データ列生成システム、及び画像伝送システム |
US20100005485A1 (en) | 2005-12-19 | 2010-01-07 | Agency For Science, Technology And Research | Annotation of video footage and personalised video generation |
US7836050B2 (en) | 2006-01-25 | 2010-11-16 | Microsoft Corporation | Ranking content based on relevance and quality |
KR100749045B1 (ko) * | 2006-01-26 | 2007-08-13 | 삼성전자주식회사 | 음악 내용 요약본을 이용한 유사곡 검색 방법 및 그 장치 |
US7889794B2 (en) | 2006-02-03 | 2011-02-15 | Eastman Kodak Company | Extracting key frame candidates from video clip |
US20080019661A1 (en) | 2006-07-18 | 2008-01-24 | Pere Obrador | Producing output video from multiple media sources including multiple video sources |
US8200063B2 (en) | 2007-09-24 | 2012-06-12 | Fuji Xerox Co., Ltd. | System and method for video summarization |
JP2009118009A (ja) | 2007-11-02 | 2009-05-28 | Sony Corp | 撮像装置、その制御方法およびプログラム |
WO2010006334A1 (en) * | 2008-07-11 | 2010-01-14 | Videosurf, Inc. | Apparatus and software system for and method of performing a visual-relevance-rank subsequent search |
JP4645707B2 (ja) | 2008-09-01 | 2011-03-09 | ソニー株式会社 | コンテンツデータ処理装置 |
US8145648B2 (en) | 2008-09-03 | 2012-03-27 | Samsung Electronics Co., Ltd. | Semantic metadata creation for videos |
US8195038B2 (en) | 2008-10-24 | 2012-06-05 | At&T Intellectual Property I, L.P. | Brief and high-interest video summary generation |
JP4623201B2 (ja) | 2008-10-27 | 2011-02-02 | ソニー株式会社 | 画像処理装置、画像処理方法およびプログラム |
JP5247356B2 (ja) | 2008-10-29 | 2013-07-24 | キヤノン株式会社 | 情報処理装置およびその制御方法 |
JP2011040860A (ja) | 2009-08-07 | 2011-02-24 | Nikon Corp | 画像処理装置及び画像処理プログラム |
US8553982B2 (en) | 2009-12-23 | 2013-10-08 | Intel Corporation | Model-based play field registration |
CN101853286B (zh) | 2010-05-20 | 2016-08-10 | 上海全土豆网络科技有限公司 | 视频缩略图智能选取方法 |
US8619150B2 (en) | 2010-05-25 | 2013-12-31 | Intellectual Ventures Fund 83 Llc | Ranking key video frames using camera fixation |
US8599316B2 (en) | 2010-05-25 | 2013-12-03 | Intellectual Ventures Fund 83 Llc | Method for determining key video frames |
US8665345B2 (en) | 2011-05-18 | 2014-03-04 | Intellectual Ventures Fund 83 Llc | Video summary including a feature of interest |
US8649558B2 (en) * | 2011-05-31 | 2014-02-11 | Wisconsin Alumni Research Foundation | Video processing with region-based warping |
CN102263907B (zh) | 2011-08-04 | 2013-09-18 | 央视国际网络有限公司 | 比赛视频的播放控制方法及其片段信息的生成方法和装置 |
US20130179112A1 (en) * | 2012-01-09 | 2013-07-11 | Honeywell International Inc. | Robust method for signal segmentation for motion classification in personal navigation |
WO2013186958A1 (ja) | 2012-06-13 | 2013-12-19 | 日本電気株式会社 | 映像重要度算出方法、映像処理装置およびその制御方法と制御プログラムを格納した記憶媒体 |
US8995823B2 (en) | 2012-07-17 | 2015-03-31 | HighlightCam, Inc. | Method and system for content relevance score determination |
US10362977B2 (en) * | 2013-10-01 | 2019-07-30 | Sway Operations, Llc | System and method for measuring reaction time of a subject |
-
2014
- 2014-06-12 US US14/303,466 patent/US10664687B2/en active Active
-
2015
- 2015-06-10 MX MX2016016293A patent/MX2016016293A/es active IP Right Grant
- 2015-06-10 KR KR1020177000955A patent/KR102354692B1/ko active IP Right Grant
- 2015-06-10 EP EP15731785.0A patent/EP3155557A1/en not_active Ceased
- 2015-06-10 CA CA2948529A patent/CA2948529A1/en not_active Abandoned
- 2015-06-10 WO PCT/US2015/034992 patent/WO2015191650A1/en active Application Filing
- 2015-06-10 JP JP2016572515A patent/JP6694829B2/ja active Active
- 2015-06-10 RU RU2016148407A patent/RU2693906C2/ru active
- 2015-06-10 AU AU2015274708A patent/AU2015274708B2/en active Active
- 2015-06-10 BR BR112016028586-7A patent/BR112016028586B1/pt active IP Right Grant
- 2015-06-10 CN CN201580031441.0A patent/CN106462744B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2339091C2 (ru) * | 2003-06-23 | 2008-11-20 | Сони Пикчерс Энтертейнмент Инк. | Вставка идентификационной метки в данные |
US20070081586A1 (en) * | 2005-09-27 | 2007-04-12 | Raveendran Vijayalakshmi R | Scalability techniques based on content information |
EP2112619B1 (en) * | 2008-04-22 | 2012-07-25 | Universität Stuttgart | Video data processing |
WO2013030634A1 (en) * | 2011-08-31 | 2013-03-07 | Rocks International Group Pte Ltd | Virtual advertising platform |
US20140079297A1 (en) * | 2012-09-17 | 2014-03-20 | Saied Tadayon | Application of Z-Webs and Z-factors to Analytics, Search Engine, Learning, Recognition, Natural Language, and Other Utilities |
Also Published As
Publication number | Publication date |
---|---|
EP3155557A1 (en) | 2017-04-19 |
KR102354692B1 (ko) | 2022-01-21 |
BR112016028586B1 (pt) | 2022-12-20 |
JP2017528016A (ja) | 2017-09-21 |
WO2015191650A1 (en) | 2015-12-17 |
AU2015274708B2 (en) | 2020-03-26 |
JP6694829B2 (ja) | 2020-05-20 |
KR20170018042A (ko) | 2017-02-15 |
MX2016016293A (es) | 2017-03-31 |
CA2948529A1 (en) | 2015-12-17 |
RU2016148407A3 (ru) | 2019-01-22 |
CN106462744B (zh) | 2019-12-03 |
AU2015274708A1 (en) | 2016-11-17 |
US10664687B2 (en) | 2020-05-26 |
CN106462744A (zh) | 2017-02-22 |
RU2016148407A (ru) | 2018-06-09 |
BR112016028586A2 (pt) | 2017-08-22 |
US20150363635A1 (en) | 2015-12-17 |
BR112016028586A8 (pt) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2693906C2 (ru) | Основанный на правилах анализ важности видео | |
US9646227B2 (en) | Computerized machine learning of interesting video sections | |
Gygli et al. | The interestingness of images | |
US10157318B2 (en) | Systems and methods for automatic key frame extraction and storyboard interface generation for video | |
CN108140032B (zh) | 用于自动视频概括的设备和方法 | |
US9224211B2 (en) | Method and system for motion detection in an image | |
US9704066B2 (en) | Multi-stage image classification | |
RU2607774C2 (ru) | Способ управления в системе захвата изображения, устройство управления и машиночитаемый носитель данных | |
CN106663196B (zh) | 用于识别主体的方法、系统和计算机可读存储介质 | |
US20220172476A1 (en) | Video similarity detection method, apparatus, and device | |
CN111311475A (zh) | 检测模型训练方法、装置、存储介质和计算机设备 | |
Canini et al. | Classifying cinematographic shot types | |
KR102102164B1 (ko) | 영상 전처리 방법, 장치 및 컴퓨터 프로그램 | |
CN113766330A (zh) | 基于视频生成推荐信息的方法和装置 | |
KR20210007276A (ko) | 영상 생성 장치 및 방법 | |
KR101833943B1 (ko) | 동영상의 주요 장면을 추출 및 탐색하는 방법 및 시스템 | |
CN114449362B (zh) | 视频封面的选取方法、装置、设备及存储介质 | |
CN114187558A (zh) | 一种视频场景识别方法、装置、计算机设备及存储介质 | |
US11087121B2 (en) | High accuracy and volume facial recognition on mobile platforms | |
CN111915713A (zh) | 一种三维动态场景的创建方法、计算机设备、存储介质 | |
CN116261009A (zh) | 智能转化影视受众的视频检测方法、装置、设备及介质 | |
CN115004245A (zh) | 目标检测方法、装置、电子设备和计算机存储介质 | |
Tiwari et al. | Development of Algorithm for Object Detection & Tracking Using RGB Model | |
Souza et al. | Generating an Album with the Best Media Using Computer Vision | |
KR102555524B1 (ko) | 영상 콘텐츠 플랫폼을 제공하는 서버 및 그 방법 |