Repository files navigation

Computer Vision Tasks

A collection of five computer vision tasks implemented in Python. Each task (folder) includes a report in PDF format presenting the results and insights gained from experimentation.

Optical flow (Task 1)

Evaluating the implementation of two popular techniques for estimating optical flow from a sequence of images - the Lucas-Kanade and Horn-Schunck methods. Comparing their results by testing them on random noise and on pairs of images. Discovering the best parameters and techniques that help us improve the estimated optical flows and performances. Implementation and evaluation of the pyramidal Lucas-Kanade.

Mean-Shift tracking (Task 2)

Implementation of the Mean-Shift mode seeking and its usage by the Mean-Shift tracker. Computing the convergence and computational efficiency by using different functions, starting points, kernel sizes/types, and termination criteria. Evaluation of the tracker on 5 different sequences from VOT14 with different parameters.

Correlation filter tracking (Task 3)

Implementation of the MOSSE correlation filter tracker and of the actual MOSSE tracker. Comparing their tracking speed and performance by using different parameters, such as update factor, parameter Gaussian, and enlarge factor. The trackers are evaluated on all sequences from the dataset VOT14 as well as on each of the sequences.

Advanced tracking (Task 4)

Implementation of three motion models (Random Walk, Nearly-Constant Velocity, Nearly-Constant Acceleration) using the Kalman filter. Evaluating each model with different values of the parameters q and r on three different curves. Proposing a particle filter tracker that uses NCV motion and a color histogram as a visual model. Evaluating the proposed tracker on the VOT14 sequence dataset using different parameters, motion models, number of particles, and colorspaces for the generation of the histogram.

Long-term tracking (Task 5)

Implementation and evaluation of the short-term and long-term versions of the SiamFC tracker. Comparing and analyzing both performances in terms of Precision, Recall, and F-score metrics on a chosen long-term sequence called car9. Determination of optimal confidence threshold for initiating and terminating re-detection processes and investigating the impact of different numbers of randomly sampled regions during re-detection on the tracker’s ability to re-detect the target within fewer frames. Comparing different sampling strategies, such as random sampling and Gaussian sampling around the last confident position.

About

Working on five computer vision tasks (optical flow, mean-shift tracking, correlation filter tracking, advanced tracking, and long-term tracking) using the programming language Python.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

Computer Vision Tasks

A collection of five computer vision tasks implemented in Python. Each task (folder) includes a report in PDF format presenting the results and insights gained from experimentation.

Optical flow (Task 1)

Evaluating the implementation of two popular techniques for estimating optical flow from a sequence of images - the Lucas-Kanade and Horn-Schunck methods. Comparing their results by testing them on random noise and on pairs of images. Discovering the best parameters and techniques that help us improve the estimated optical flows and performances. Implementation and evaluation of the pyramidal Lucas-Kanade.

Mean-Shift tracking (Task 2)

Implementation of the Mean-Shift mode seeking and its usage by the Mean-Shift tracker. Computing the convergence and computational efficiency by using different functions, starting points, kernel sizes/types, and termination criteria. Evaluation of the tracker on 5 different sequences from VOT14 with different parameters.

Correlation filter tracking (Task 3)

Implementation of the MOSSE correlation filter tracker and of the actual MOSSE tracker. Comparing their tracking speed and performance by using different parameters, such as update factor, parameter Gaussian, and enlarge factor. The trackers are evaluated on all sequences from the dataset VOT14 as well as on each of the sequences.

Advanced tracking (Task 4)

Implementation of three motion models (Random Walk, Nearly-Constant Velocity, Nearly-Constant Acceleration) using the Kalman filter. Evaluating each model with different values of the parameters q and r on three different curves. Proposing a particle filter tracker that uses NCV motion and a color histogram as a visual model. Evaluating the proposed tracker on the VOT14 sequence dataset using different parameters, motion models, number of particles, and colorspaces for the generation of the histogram.

Long-term tracking (Task 5)

Implementation and evaluation of the short-term and long-term versions of the SiamFC tracker. Comparing and analyzing both performances in terms of Precision, Recall, and F-score metrics on a chosen long-term sequence called car9. Determination of optimal confidence threshold for initiating and terminating re-detection processes and investigating the impact of different numbers of randomly sampled regions during re-detection on the tracker’s ability to re-detect the target within fewer frames. Comparing different sampling strategies, such as random sampling and Gaussian sampling around the last confident position.

About

Working on five computer vision tasks (optical flow, mean-shift tracking, correlation filter tracking, advanced tracking, and long-term tracking) using the programming language Python.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Computer Vision Tasks

A collection of five computer vision tasks implemented in Python. Each task (folder) includes a report in PDF format presenting the results and insights gained from experimentation.

Optical flow (Task 1)

Evaluating the implementation of two popular techniques for estimating optical flow from a sequence of images - the Lucas-Kanade and Horn-Schunck methods. Comparing their results by testing them on random noise and on pairs of images. Discovering the best parameters and techniques that help us improve the estimated optical flows and performances. Implementation and evaluation of the pyramidal Lucas-Kanade.

Mean-Shift tracking (Task 2)

Implementation of the Mean-Shift mode seeking and its usage by the Mean-Shift tracker. Computing the convergence and computational efficiency by using different functions, starting points, kernel sizes/types, and termination criteria. Evaluation of the tracker on 5 different sequences from VOT14 with different parameters.

Correlation filter tracking (Task 3)

Implementation of the MOSSE correlation filter tracker and of the actual MOSSE tracker. Comparing their tracking speed and performance by using different parameters, such as update factor, parameter Gaussian, and enlarge factor. The trackers are evaluated on all sequences from the dataset VOT14 as well as on each of the sequences.

Advanced tracking (Task 4)

Implementation of three motion models (Random Walk, Nearly-Constant Velocity, Nearly-Constant Acceleration) using the Kalman filter. Evaluating each model with different values of the parameters q and r on three different curves. Proposing a particle filter tracker that uses NCV motion and a color histogram as a visual model. Evaluating the proposed tracker on the VOT14 sequence dataset using different parameters, motion models, number of particles, and colorspaces for the generation of the histogram.

Long-term tracking (Task 5)

Implementation and evaluation of the short-term and long-term versions of the SiamFC tracker. Comparing and analyzing both performances in terms of Precision, Recall, and F-score metrics on a chosen long-term sequence called car9. Determination of optimal confidence threshold for initiating and terminating re-detection processes and investigating the impact of different numbers of randomly sampled regions during re-detection on the tracker’s ability to re-detect the target within fewer frames. Comparing different sampling strategies, such as random sampling and Gaussian sampling around the last confident position.

About

Working on five computer vision tasks (optical flow, mean-shift tracking, correlation filter tracking, advanced tracking, and long-term tracking) using the programming language Python.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Computer Vision Tasks

A collection of five computer vision tasks implemented in Python. Each task (folder) includes a report in PDF format presenting the results and insights gained from experimentation.

Optical flow (Task 1)

Evaluating the implementation of two popular techniques for estimating optical flow from a sequence of images - the Lucas-Kanade and Horn-Schunck methods. Comparing their results by testing them on random noise and on pairs of images. Discovering the best parameters and techniques that help us improve the estimated optical flows and performances. Implementation and evaluation of the pyramidal Lucas-Kanade.

Mean-Shift tracking (Task 2)

Implementation of the Mean-Shift mode seeking and its usage by the Mean-Shift tracker. Computing the convergence and computational efficiency by using different functions, starting points, kernel sizes/types, and termination criteria. Evaluation of the tracker on 5 different sequences from VOT14 with different parameters.

Correlation filter tracking (Task 3)

Implementation of the MOSSE correlation filter tracker and of the actual MOSSE tracker. Comparing their tracking speed and performance by using different parameters, such as update factor, parameter Gaussian, and enlarge factor. The trackers are evaluated on all sequences from the dataset VOT14 as well as on each of the sequences.

Advanced tracking (Task 4)

Implementation of three motion models (Random Walk, Nearly-Constant Velocity, Nearly-Constant Acceleration) using the Kalman filter. Evaluating each model with different values of the parameters q and r on three different curves. Proposing a particle filter tracker that uses NCV motion and a color histogram as a visual model. Evaluating the proposed tracker on the VOT14 sequence dataset using different parameters, motion models, number of particles, and colorspaces for the generation of the histogram.

Long-term tracking (Task 5)

Implementation and evaluation of the short-term and long-term versions of the SiamFC tracker. Comparing and analyzing both performances in terms of Precision, Recall, and F-score metrics on a chosen long-term sequence called car9. Determination of optimal confidence threshold for initiating and terminating re-detection processes and investigating the impact of different numbers of randomly sampled regions during re-detection on the tracker’s ability to re-detect the target within fewer frames. Comparing different sampling strategies, such as random sampling and Gaussian sampling around the last confident position.

About

Working on five computer vision tasks (optical flow, mean-shift tracking, correlation filter tracking, advanced tracking, and long-term tracking) using the programming language Python.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

Computer Vision Tasks

A collection of five computer vision tasks implemented in Python. Each task (folder) includes a report in PDF format presenting the results and insights gained from experimentation.

Optical flow (Task 1)

Evaluating the implementation of two popular techniques for estimating optical flow from a sequence of images - the Lucas-Kanade and Horn-Schunck methods. Comparing their results by testing them on random noise and on pairs of images. Discovering the best parameters and techniques that help us improve the estimated optical flows and performances. Implementation and evaluation of the pyramidal Lucas-Kanade.

Mean-Shift tracking (Task 2)

Implementation of the Mean-Shift mode seeking and its usage by the Mean-Shift tracker. Computing the convergence and computational efficiency by using different functions, starting points, kernel sizes/types, and termination criteria. Evaluation of the tracker on 5 different sequences from VOT14 with different parameters.

Correlation filter tracking (Task 3)

Implementation of the MOSSE correlation filter tracker and of the actual MOSSE tracker. Comparing their tracking speed and performance by using different parameters, such as update factor, parameter Gaussian, and enlarge factor. The trackers are evaluated on all sequences from the dataset VOT14 as well as on each of the sequences.

Advanced tracking (Task 4)

Implementation of three motion models (Random Walk, Nearly-Constant Velocity, Nearly-Constant Acceleration) using the Kalman filter. Evaluating each model with different values of the parameters q and r on three different curves. Proposing a particle filter tracker that uses NCV motion and a color histogram as a visual model. Evaluating the proposed tracker on the VOT14 sequence dataset using different parameters, motion models, number of particles, and colorspaces for the generation of the histogram.

Long-term tracking (Task 5)

Implementation and evaluation of the short-term and long-term versions of the SiamFC tracker. Comparing and analyzing both performances in terms of Precision, Recall, and F-score metrics on a chosen long-term sequence called car9. Determination of optimal confidence threshold for initiating and terminating re-detection processes and investigating the impact of different numbers of randomly sampled regions during re-detection on the tracker’s ability to re-detect the target within fewer frames. Comparing different sampling strategies, such as random sampling and Gaussian sampling around the last confident position.

About

Working on five computer vision tasks (optical flow, mean-shift tracking, correlation filter tracking, advanced tracking, and long-term tracking) using the programming language Python.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Computer Vision Tasks

A collection of five computer vision tasks implemented in Python. Each task (folder) includes a report in PDF format presenting the results and insights gained from experimentation.

Optical flow (Task 1)

Evaluating the implementation of two popular techniques for estimating optical flow from a sequence of images - the Lucas-Kanade and Horn-Schunck methods. Comparing their results by testing them on random noise and on pairs of images. Discovering the best parameters and techniques that help us improve the estimated optical flows and performances. Implementation and evaluation of the pyramidal Lucas-Kanade.

Mean-Shift tracking (Task 2)

Implementation of the Mean-Shift mode seeking and its usage by the Mean-Shift tracker. Computing the convergence and computational efficiency by using different functions, starting points, kernel sizes/types, and termination criteria. Evaluation of the tracker on 5 different sequences from VOT14 with different parameters.

Correlation filter tracking (Task 3)

Implementation of the MOSSE correlation filter tracker and of the actual MOSSE tracker. Comparing their tracking speed and performance by using different parameters, such as update factor, parameter Gaussian, and enlarge factor. The trackers are evaluated on all sequences from the dataset VOT14 as well as on each of the sequences.

Advanced tracking (Task 4)

Implementation of three motion models (Random Walk, Nearly-Constant Velocity, Nearly-Constant Acceleration) using the Kalman filter. Evaluating each model with different values of the parameters q and r on three different curves. Proposing a particle filter tracker that uses NCV motion and a color histogram as a visual model. Evaluating the proposed tracker on the VOT14 sequence dataset using different parameters, motion models, number of particles, and colorspaces for the generation of the histogram.

Long-term tracking (Task 5)

Implementation and evaluation of the short-term and long-term versions of the SiamFC tracker. Comparing and analyzing both performances in terms of Precision, Recall, and F-score metrics on a chosen long-term sequence called car9. Determination of optimal confidence threshold for initiating and terminating re-detection processes and investigating the impact of different numbers of randomly sampled regions during re-detection on the tracker’s ability to re-detect the target within fewer frames. Comparing different sampling strategies, such as random sampling and Gaussian sampling around the last confident position.

About

Working on five computer vision tasks (optical flow, mean-shift tracking, correlation filter tracking, advanced tracking, and long-term tracking) using the programming language Python.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Computer Vision Tasks

A collection of five computer vision tasks implemented in Python. Each task (folder) includes a report in PDF format presenting the results and insights gained from experimentation.

Optical flow (Task 1)

Evaluating the implementation of two popular techniques for estimating optical flow from a sequence of images - the Lucas-Kanade and Horn-Schunck methods. Comparing their results by testing them on random noise and on pairs of images. Discovering the best parameters and techniques that help us improve the estimated optical flows and performances. Implementation and evaluation of the pyramidal Lucas-Kanade.

Mean-Shift tracking (Task 2)

Implementation of the Mean-Shift mode seeking and its usage by the Mean-Shift tracker. Computing the convergence and computational efficiency by using different functions, starting points, kernel sizes/types, and termination criteria. Evaluation of the tracker on 5 different sequences from VOT14 with different parameters.

Correlation filter tracking (Task 3)

Implementation of the MOSSE correlation filter tracker and of the actual MOSSE tracker. Comparing their tracking speed and performance by using different parameters, such as update factor, parameter Gaussian, and enlarge factor. The trackers are evaluated on all sequences from the dataset VOT14 as well as on each of the sequences.

Advanced tracking (Task 4)

Implementation of three motion models (Random Walk, Nearly-Constant Velocity, Nearly-Constant Acceleration) using the Kalman filter. Evaluating each model with different values of the parameters q and r on three different curves. Proposing a particle filter tracker that uses NCV motion and a color histogram as a visual model. Evaluating the proposed tracker on the VOT14 sequence dataset using different parameters, motion models, number of particles, and colorspaces for the generation of the histogram.

Long-term tracking (Task 5)

Implementation and evaluation of the short-term and long-term versions of the SiamFC tracker. Comparing and analyzing both performances in terms of Precision, Recall, and F-score metrics on a chosen long-term sequence called car9. Determination of optimal confidence threshold for initiating and terminating re-detection processes and investigating the impact of different numbers of randomly sampled regions during re-detection on the tracker’s ability to re-detect the target within fewer frames. Comparing different sampling strategies, such as random sampling and Gaussian sampling around the last confident position.

About

Working on five computer vision tasks (optical flow, mean-shift tracking, correlation filter tracking, advanced tracking, and long-term tracking) using the programming language Python.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

Computer Vision Tasks

A collection of five computer vision tasks implemented in Python. Each task (folder) includes a report in PDF format presenting the results and insights gained from experimentation.

Optical flow (Task 1)

Evaluating the implementation of two popular techniques for estimating optical flow from a sequence of images - the Lucas-Kanade and Horn-Schunck methods. Comparing their results by testing them on random noise and on pairs of images. Discovering the best parameters and techniques that help us improve the estimated optical flows and performances. Implementation and evaluation of the pyramidal Lucas-Kanade.

Mean-Shift tracking (Task 2)

Implementation of the Mean-Shift mode seeking and its usage by the Mean-Shift tracker. Computing the convergence and computational efficiency by using different functions, starting points, kernel sizes/types, and termination criteria. Evaluation of the tracker on 5 different sequences from VOT14 with different parameters.

Correlation filter tracking (Task 3)

Implementation of the MOSSE correlation filter tracker and of the actual MOSSE tracker. Comparing their tracking speed and performance by using different parameters, such as update factor, parameter Gaussian, and enlarge factor. The trackers are evaluated on all sequences from the dataset VOT14 as well as on each of the sequences.

Advanced tracking (Task 4)

Implementation of three motion models (Random Walk, Nearly-Constant Velocity, Nearly-Constant Acceleration) using the Kalman filter. Evaluating each model with different values of the parameters q and r on three different curves. Proposing a particle filter tracker that uses NCV motion and a color histogram as a visual model. Evaluating the proposed tracker on the VOT14 sequence dataset using different parameters, motion models, number of particles, and colorspaces for the generation of the histogram.

Long-term tracking (Task 5)

Implementation and evaluation of the short-term and long-term versions of the SiamFC tracker. Comparing and analyzing both performances in terms of Precision, Recall, and F-score metrics on a chosen long-term sequence called car9. Determination of optimal confidence threshold for initiating and terminating re-detection processes and investigating the impact of different numbers of randomly sampled regions during re-detection on the tracker’s ability to re-detect the target within fewer frames. Comparing different sampling strategies, such as random sampling and Gaussian sampling around the last confident position.

About

Working on five computer vision tasks (optical flow, mean-shift tracking, correlation filter tracking, advanced tracking, and long-term tracking) using the programming language Python.

Topics

Resources

Stars

9 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages