Open Access. Powered by Scholars. Published by Universities.®
Programming Languages and Compilers Commons™
Open Access. Powered by Scholars. Published by Universities.®
- Institution
-
- Singapore Management University (198)
- City University of New York (CUNY) (63)
- Chapman University (17)
- Loyola University Chicago (13)
- University of Dayton (13)
-
- Portland State University (10)
- University of Texas at El Paso (8)
- California Polytechnic State University, San Luis Obispo (7)
- Old Dominion University (7)
- University of Malaya (7)
- San Jose State University (5)
- California State University, San Bernardino (4)
- Technological University Dublin (4)
- The University of Akron (4)
- University of Arkansas, Fayetteville (4)
- Fordham University (3)
- Montclair State University (3)
- Purdue University (3)
- St. Mary's University (3)
- University of Nevada, Las Vegas (3)
- Brigham Young University (2)
- Dakota State University (2)
- Embry-Riddle Aeronautical University (2)
- Fort Hays State University (2)
- Kennesaw State University (2)
- LSU New Orleans (2)
- Liberty University (2)
- Minnesota State University Moorhead (2)
- Southern Adventist University (2)
- Southern Methodist University (2)
- Keyword
-
- Refactoring (25)
- Software engineering (25)
- Model Check (22)
- Java (19)
- Programming (16)
-
- Programming languages (16)
- Deep learning (14)
- Java 8 (12)
- Linear Temporal Logic (10)
- Software Engineering (10)
- Static analysis (10)
- Empirical studies (9)
- Python (9)
- Computer science (8)
- Default methods (8)
- Imperative programs (8)
- Label Transition System (8)
- Software (8)
- Software evolution (8)
- Software maintenance (8)
- Streams (8)
- Computational thinking (7)
- Computer Science (7)
- Empirical study (7)
- Automated refactoring (6)
- Large language models (6)
- Operational Semantic (6)
- Software tools (6)
- Typestate analysis (6)
- Android (5)
- Publication Year
- Publication
-
- Research Collection School Of Computing and Information Systems (184)
- Publications and Research (51)
- Journal of Computer Science Integration (16)
- Computer Science Faculty Publications (13)
- Computer Science: Faculty Publications and Other Works (12)
-
- Open Educational Resources (9)
- Computer Science Faculty Publications and Presentations (8)
- Departmental Technical Reports (CS) (8)
- Dissertations and Theses Collection (Open Access) (8)
- Student Works (2000-2009) (7)
- Dissertations and Theses Collection (5)
- Master's Theses (5)
- Faculty Publications (4)
- Williams Honors College, Honors Research Projects (4)
- Computer Science Theses & Dissertations (3)
- Department of Computer Science Faculty Scholarship and Creative Works (3)
- Electrical & Computer Engineering Theses & Dissertations (3)
- Electronic Theses, Projects, and Dissertations (3)
- Master's Projects (3)
- Articles (2)
- Computer Engineering (2)
- Computer Science and Computer Engineering Undergraduate Honors Theses (2)
- Department of Electrical and Computer Engineering Faculty Publications (2)
- Faculty Articles (2)
- Graduate Theses and Dissertations (2)
- Honors Scholar Theses (2)
- LSU New Orleans Theses and Dissertations (2)
- Research & Publications (2)
- Senior Honors Theses (2)
- Student Academic Conference (2)
- Publication Type
- File Type
Articles 151 - 180 of 435
Full-Text Articles in Programming Languages and Compilers
Functional Programming For Systems Software: Implementing Baremetal Programs In Habit, Donovan Ellison
Functional Programming For Systems Software: Implementing Baremetal Programs In Habit, Donovan Ellison
University Honors Theses
Programming in a baremetal environment, directly on top of hardware with very little to help manage memory or ensure safety, can be dangerous even for experienced programmers. Programming languages can ease the burden on developers and sometimes take care of entire sets of errors. This is not the case for a language like C that will do almost anything you want, for better or worse. To operate in a baremetal environment often requires direct control over memory, but it would be nice to have that capability without sacrificing safety guarantees. Rust is a new language that aims to fit this …
Automated Synthesis Of Local Time Requirement For Service Composition, Étienne André, Tian Huat Tan, Manman Chen, Shuang Liu, Jun Sun, Yang Liu, Jin Song Dong
Automated Synthesis Of Local Time Requirement For Service Composition, Étienne André, Tian Huat Tan, Manman Chen, Shuang Liu, Jun Sun, Yang Liu, Jin Song Dong
Research Collection School Of Computing and Information Systems
Service composition aims at achieving a business goal by composing existing service-based applications or components. The response time of a service is crucial, especially in time-critical business environments, which is often stated as a clause in service-level agreements between service providers and service users. To meet the guaranteed response time requirement of a composite service, it is important to select a feasible set of component services such that their response time will collectively satisfy the response time requirement of the composite service. In this work, we use the BPEL modeling language that aims at specifying Web services. We extend it …
A Virtualization Based System Infrastructure For Dynamic Program Analysis, Jiaqi Hong
A Virtualization Based System Infrastructure For Dynamic Program Analysis, Jiaqi Hong
Dissertations and Theses Collection (Open Access)
Dynamic malware analysis schemes either run the target program as is in an isolated environment assisted by additional hardware facilities or modify it with instrumentation code statically or dynamically. The hardware-assisted schemes usually trap the target during its execution to a more privileged environment based on the available hardware events. The more privileged environment is not accessible by the untrusted kernel, thus this approach is often applied for transparent and secure kernel analysis. Nevertheless, the isolated environment induces a virtual address gap between the analyzer and the target, which hinders effective and efficient memory introspection and undermines the correctness of …
Javafx Application, Pengfei Huang
Javafx Application, Pengfei Huang
Student Academic Conference
Developing java GUI application by using JavaFX.
Posit: Simultaneously Tagging Natural And Programming Languages, Profir-Petru Pârțachi, Santanu Dash, Christoph Treude, Earl T. Barr
Posit: Simultaneously Tagging Natural And Programming Languages, Profir-Petru Pârțachi, Santanu Dash, Christoph Treude, Earl T. Barr
Research Collection School Of Computing and Information Systems
Software developers use a mix of source code and natural language text to communicate with each other: Stack Overflow and Developer mailing lists abound with this mixed text. Tagging this mixed text is essential for making progress on two seminal software engineering problems — traceability, and reuse via precise extraction of code snippets from mixed text. In this paper, we borrow code-switching techniques from Natural Language Processing and adapt them to apply to mixed text to solve two problems: language identification and token tagging. Our technique, POSIT, simultaneously provides abstract syntax tree tags for source code tokens, part-of-speech tags for …
An Empirical Study On The Use And Misuse Of Java 8 Streams, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh, Baishakhi Ray
An Empirical Study On The Use And Misuse Of Java 8 Streams, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh, Baishakhi Ray
Publications and Research
Streaming APIs allow for big data processing of native data structures by providing MapReduce-like operations over these structures. However, unlike traditional big data systems, these data structures typically reside in shared memory accessed by multiple cores. Although popular, this emerging hybrid paradigm opens the door to possibly detrimental behavior, such as thread contention and bugs related to non-execution and non-determinism. This study explores the use and misuse of a popular streaming API, namely, Java 8 Streams. The focus is on how developers decide whether or not to run these operations sequentially or in parallel and bugs both specific and tangential …
An Empirical Study On The Use And Misuse Of Java 8 Streams, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh, Baishakhi Ray
An Empirical Study On The Use And Misuse Of Java 8 Streams, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh, Baishakhi Ray
Publications and Research
Streaming APIs allow for big data processing of native data structures by providing MapReduce-like operations over these structures. However, unlike traditional big data systems, these data structures typically reside in shared memory accessed by multiple cores. Although popular, this emerging hybrid paradigm opens the door to possibly detrimental behavior, such as thread contention and bugs related to non-execution and non-determinism. This study explores the use and misuse of a popular streaming API, namely, Java 8 Streams. The focus is on how developers decide whether or not to run these operations sequentially or in parallel and bugs both specific and tangential …
Achieving Obfuscation Through Self-Modifying Code: A Theoretical Model, Heidi Waddell
Achieving Obfuscation Through Self-Modifying Code: A Theoretical Model, Heidi Waddell
Senior Honors Theses
With the extreme amount of data and software available on networks, the protection of online information is one of the most important tasks of this technological age. There is no such thing as safe computing, and it is inevitable that security breaches will occur. Thus, security professionals and practices focus on two areas: security, preventing a breach from occurring, and resiliency, minimizing the damages once a breach has occurred. One of the most important practices for adding resiliency to source code is through obfuscation, a method of re-writing the code to a form that is virtually unreadable. …
Storage Management Strategy In Mobile Phones For Photo Crowdsensing, En Wang, Zhengdao Qu, Xinyao Liang, Xiangyu Meng, Yongjian Yang, Dawei Li, Weibin Meng
Storage Management Strategy In Mobile Phones For Photo Crowdsensing, En Wang, Zhengdao Qu, Xinyao Liang, Xiangyu Meng, Yongjian Yang, Dawei Li, Weibin Meng
Department of Computer Science Faculty Scholarship and Creative Works
In mobile crowdsensing, some users jointly finish a sensing task through the sensors equipped in their intelligent terminals. In particular, the photo crowdsensing based on Mobile Edge Computing (MEC) collects pictures for some specific targets or events and uploads them to nearby edge servers, which leads to richer data content and more efficient data storage compared with the common mobile crowdsensing; hence, it has attracted an important amount of attention recently. However, the mobile users prefer uploading the photos through Wifi APs (PoIs) rather than cellular networks. Therefore, photos stored in mobile phones are exchanged among users, in order to …
Gradual Program Analysis, Samuel Estep
Gradual Program Analysis, Samuel Estep
Senior Honors Theses
Dataflow analysis and gradual typing are both well-studied methods to gain information about computer programs in a finite amount of time. The gradual program analysis project seeks to combine those two techniques in order to gain the benefits of both. This thesis explores the background information necessary to understand gradual program analysis, and then briefly discusses the research itself, with reference to publication of work done so far. The background topics include essential aspects of programming language theory, such as syntax, semantics, and static typing; dataflow analysis concepts, such as abstract interpretation, semilattices, and fixpoint computations; and gradual typing theory, …
Incorporating Digital Ethics Throughout The Software Development Process, Michael Collins, Damian Gordon, Anna Becevel, William O'Mahony
Incorporating Digital Ethics Throughout The Software Development Process, Michael Collins, Damian Gordon, Anna Becevel, William O'Mahony
Conference papers
The media is reporting scandals associated with computer companies with increasing regularity; whether it is the misuse of user data, breach of privacy concerns, the use of biased artificial intelligence, or the problems of automated vehicles. Because of these complex issues, there is a growing need to equip computer science students with a deep appreciation of ethics, and to ensure that in the future they will develop computer systems that are ethically-based. One particularly useful strand of their education to incorporate ethics into is when teaching them about the formal approaches to developing computer systems.
There are a number of …
Securing Bring-Your-Own-Device (Byod) Programming Exams, Oka Kurniawan, Norman Lee, Christopher M. Poskitt
Securing Bring-Your-Own-Device (Byod) Programming Exams, Oka Kurniawan, Norman Lee, Christopher M. Poskitt
Research Collection School Of Computing and Information Systems
Traditional pen and paper exams are inadequate for modern university programming courses as they are misaligned with pedagogies and learning objectives that target practical coding ability. Unfortunately, many institutions lack the resources or space to be able to run assessments in dedicated computer labs. This has motivated the development of bring-your-own-device (BYOD) exam formats, allowing students to program in a similar environment to how they learnt, but presenting instructors with significant additional challenges in preventing plagiarism and cheating. In this paper, we describe a BYOD exam solution based on lockdown browsers, software which temporarily turns students' laptops into secure workstations …
Mcdpc: Multi‐Center Density Peak Clustering, Yizhang Wang, Di Wang, Xiaofeng Zhang, Wei Pang, Chunyan Miao, Ah-Hwee Tan, You Zhou
Mcdpc: Multi‐Center Density Peak Clustering, Yizhang Wang, Di Wang, Xiaofeng Zhang, Wei Pang, Chunyan Miao, Ah-Hwee Tan, You Zhou
Research Collection School Of Computing and Information Systems
Density peak clustering (DPC) is a recently developed density-based clustering algorithm that achieves competitive performance in a non-iterative manner. DPC is capable of effectively handling clusters with single density peak (single center), i.e., based on DPC’s hypothesis, one and only one data point is chosen as the center of any cluster. However, DPC may fail to identify clusters with multiple density peaks (multi-centers) and may not be able to identify natural clusters whose centers have relatively lower local density. To address these limitations, we propose a novel clustering algorithm based on a hierarchical approach, named multi-center density peak clustering (McDPC). …
Safe Automated Refactoring For Intelligent Parallelization Of Java 8 Streams, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh
Safe Automated Refactoring For Intelligent Parallelization Of Java 8 Streams, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh
Publications and Research
Streaming APIs are becoming more pervasive in mainstream Object-Oriented programming languages and platforms. For example, the Stream API introduced in Java 8 allows for functional-like, MapReduce-style operations in processing both finite, e.g., collections, and infinite data structures. However, using this API efficiently involves subtle considerations such as determining when it is best for stream operations to run in parallel, when running operations in parallel can be less efficient, and when it is safe to run in parallel due to possible lambda expression side-effects. ics-preserving fashion. The approach, based on a novel data ordering and typestate analysis, consists of preconditions and …
Building Something With The Raspberry Pi, Richard Kordel
Building Something With The Raspberry Pi, Richard Kordel
Harrisburg University Presidential Research Grants
In 2017 Ryan Korn and I submitted a grant proposal in the annual Harrisburg University President’s Grant process. Our proposal was to partner with a local high school to install a classroom of 20 Raspberry Pi’s, along with the requisite peripherals. In that classroom students would be challenged to design something that combined programming with physical computing. In our presentation to the school we suggested that this project would give students the opportunity to be “amazing.”
As part of the grant, the top three students would be given scholarships to HU and the top five finalists would all be permitted …
Android Game, Ryan Weston
Android Game, Ryan Weston
Williams Honors College, Honors Research Projects
The purpose of this project was to create an endless runner game for Android coded in Java and XML and developed in Android Studio. In the game, the player controls a frog that jumps from lily pad to lily pad to avoid logs moving toward the player. The player must also maneuver the lily pads as they can randomly disappear. There are three difficulties in the game that vary the disappearance rate of lily pads as well as the frequency and acceleration rate of the log obstacles. The game also has a scoring system and saves the high score locally …
V-Slam And Sensor Fusion For Ground Robots, Ejup Hoxha
V-Slam And Sensor Fusion For Ground Robots, Ejup Hoxha
Dissertations and Theses
In underground, underwater and indoor environments, a robot has to rely solely on its on-board sensors to sense and understand its surroundings. This is the main reason why SLAM gained the popularity it has today. In recent years, we have seen excellent improvement on accuracy of localization using cameras and combinations of different sensors, especially camera-IMU (VIO) fusion. Incorporating more sensors leads to improvement of accuracy,but also robustness of SLAM. However, while testing SLAM in our ground robots, we have seen a decrease in performance quality when using the same algorithms on flying vehicles.We have an additional sensor for ground …
Memory And Resource Leak Defects And Their Repairs In Java Projects, Mohammadreza Ghanavati, Diego Costa, Janos Seboek, David Lo, Artur Andrzejak
Memory And Resource Leak Defects And Their Repairs In Java Projects, Mohammadreza Ghanavati, Diego Costa, Janos Seboek, David Lo, Artur Andrzejak
Research Collection School Of Computing and Information Systems
Despite huge software engineering efforts and programming language support, resource and memory leaks are still a troublesome issue, even in memory-managed languages such as Java. Understanding the properties of leak-inducing defects, how the leaks manifest, and how they are repaired is an essential prerequisite for designing better approaches for avoidance, diagnosis, and repair of leak-related bugs. We conduct a detailed empirical study on 452 issues from 10 large opensource Java projects. The study proposes taxonomies for the leak types, for the defects causing them, and for the repair actions. We investigate, under several aspects, the distributions within each taxonomy and …
Multimodal Mobile Sensing Systems For Physiological And Psychological Assessment, Nguyen Phan Sinh Huynh
Multimodal Mobile Sensing Systems For Physiological And Psychological Assessment, Nguyen Phan Sinh Huynh
Dissertations and Theses Collection (Open Access)
Sensing systems for monitoring physiological and psychological states have been studied extensively in both academic and industry research for different applications across various domains. However, most of the studies have been done in the lab environment with controlled and complicated sensor setup, which is only suitable for serious healthcare applications in which the obtrusiveness and immobility can be compromised in a trade-off for accurate clinical screening or diagnosing. The recent substantial development of mobile devices with embedded miniaturized sensors are now allowing new opportunities to adapt and develop such sensing systems in the mobile context. The ability to sense physiological …
Sieve: Helping Developers Sift Wheat From Chaff Via Cross-Platform Analysis, Agus Sulistya, Gede A. A. P. Prana, David Lo, Christoph Treude
Sieve: Helping Developers Sift Wheat From Chaff Via Cross-Platform Analysis, Agus Sulistya, Gede A. A. P. Prana, David Lo, Christoph Treude
Research Collection School Of Computing and Information Systems
Software developers have benefited from various sources of knowledge such as forums, question-and-answer sites, and social media platforms to help them in various tasks. Extracting software-related knowledge from different platforms involves many challenges. In this paper, we propose an approach to improve the effectiveness of knowledge extraction tasks by performing cross-platform analysis. Our approach is based on transfer representation learning and word embedding, leveraging information extracted from a source platform which contains rich domain-related content. The information extracted is then used to solve tasks in another platform (considered as target platform) with less domain-related content. We first build a word …
Exploiting Approximation, Caching And Specialization To Accelerate Vision Sensing Applications, Nguyen Loc Huynh
Exploiting Approximation, Caching And Specialization To Accelerate Vision Sensing Applications, Nguyen Loc Huynh
Dissertations and Theses Collection (Open Access)
Over the past few years, deep learning has emerged as state-of-the-art solutions for many challenging computer vision tasks such as face recognition, object detection, etc. Despite of its outstanding performance, deep neural networks (DNNs) are computational intensive, which prevent them to be widely adopted on billions of mobile and embedded devices with scarce resources. To address that limitation, we
focus on building systems and optimization algorithms to accelerate those models, making them more computational-efficient.
First, this thesis explores the computational capabilities of different existing processors (or co-processors) on modern mobile devices. It recognizes that by leveraging the mobile Graphics Processing …
A Case Study On Automated Fuzz Target Generation For Large Codebases, Matthew Kelly, Christoph Treude, Alex Murray
A Case Study On Automated Fuzz Target Generation For Large Codebases, Matthew Kelly, Christoph Treude, Alex Murray
Research Collection School Of Computing and Information Systems
Fuzz Testing is a largely automated testing technique that provides random and unexpected input to a program in attempt to trigger failure conditions. Much of the research conducted thus far into Fuzz Testing has focused on developing improvements to available Fuzz Testing tools and frameworks in order to improve efficiency. In this paper however, we instead look at a way in which we can reduce the amount of developer time required to integrate Fuzz Testing to help maintain an existing codebase. We accomplish this with a new technique for automatically generating Fuzz Targets, the modified versions of programs on which …
Multiagent Decision Making And Learning In Urban Environments, Akshat Kumar
Multiagent Decision Making And Learning In Urban Environments, Akshat Kumar
Research Collection School Of Computing and Information Systems
Our increasingly interconnected urban environments provide several opportunities to deploy intelligent agents—from self-driving cars, ships to aerial drones—that promise to radically improve productivity and safety. Achieving coordination among agents in such urban settings presents several algorithmic challenges—ability to scale to thousands of agents, addressing uncertainty, and partial observability in the environment. In addition, accurate domain models need to be learned from data that is often noisy and available only at an aggregate level. In this paper, I will overview some of our recent contributions towards developing planning and reinforcement learning strategies to address several such challenges present in largescale urban …
A Survey On Bluetooth 5.0 And Mesh: New Milestones Of Iot, Juenjie Yin, Zheng Yang, Hao Cao, Tongtong Liu, Zimu Zhou, Chenshu Wu
A Survey On Bluetooth 5.0 And Mesh: New Milestones Of Iot, Juenjie Yin, Zheng Yang, Hao Cao, Tongtong Liu, Zimu Zhou, Chenshu Wu
Research Collection School Of Computing and Information Systems
No abstract provided.
Safe Automated Refactoring For Intelligent Parallelization Of Java 8 Streams, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh, Syed Ahmed
Safe Automated Refactoring For Intelligent Parallelization Of Java 8 Streams, Raffi Khatchadourian, Yiming Tang, Mehdi Bagherzadeh, Syed Ahmed
Publications and Research
Streaming APIs are becoming more pervasive in mainstream Object-Oriented programming languages and platforms. For example, the Stream API introduced in Java 8 allows for functional-like, MapReduce-style operations in processing both finite, e.g., collections, and infinite data structures. However, using this API efficiently involves subtle considerations such as determining when it is best for stream operations to run in parallel, when running operations in parallel can be less efficient, and when it is safe to run in parallel due to possible lambda expression side-effects. Also, streams may not run all operations in parallel depending on particular collectors used in reductions. In …
Tests As Maintainable Assets Via Auto-Generated Spies: A Case Study Involving The Scala Collections Library's Iterator Trait, Konstantin Läufer, John O'Sullivan, George K. Thiruvathukal
Tests As Maintainable Assets Via Auto-Generated Spies: A Case Study Involving The Scala Collections Library's Iterator Trait, Konstantin Läufer, John O'Sullivan, George K. Thiruvathukal
Computer Science: Faculty Publications and Other Works
In testing stateful abstractions, it is often necessary to record interactions, such as method invocations, and express assertions over these interactions. Following the Test Spy design pattern, we can reify such interactions programmatically through additional mutable state. Alternatively, a mocking framework, such as Mockito, can automatically generate test spies that allow us to record the interactions and express our expectations in a declarative domain-specific language. According to our study of the test code for Scala’s Iterator trait, the latter approach can lead to a significant reduction of test code complexity in terms of metrics such as code size (in some …
Practical And Effective Sandboxing For Linux Containers, Zhiyuan Wan, David Lo, Xin Xia, Liang Cai
Practical And Effective Sandboxing For Linux Containers, Zhiyuan Wan, David Lo, Xin Xia, Liang Cai
Research Collection School Of Computing and Information Systems
A container is a group of processes isolated from other groups via distinct kernel namespaces and resource allocation quota. Attacks against containers often leverage kernel exploits through the system call interface. In this paper, we present an approach that mines sandboxes and enables fine-grained sandbox enforcement for containers. We first explore the behavior of a container by running test cases and monitor the accessed system calls including types and arguments during testing. We then characterize the types and arguments of system call invocations and translate them into sandbox rules for the container. The mined sandbox restricts the container’s access to …
Semantic Patches For Java Program Transformation (Artifact), Hong Jin Kang, Thung Ferdian, Julia Lawall, Gilles Muller, Lingxiao Jiang, David Lo
Semantic Patches For Java Program Transformation (Artifact), Hong Jin Kang, Thung Ferdian, Julia Lawall, Gilles Muller, Lingxiao Jiang, David Lo
Research Collection School Of Computing and Information Systems
The program transformation tool Coccinelle is designed for making changes that is required in many locations within a software project. It has been shown to be useful for C code and has been been adopted for use in the Linux kernel by many developers. Over 6000 commits mentioning the use of Coccinelle have been made in the Linux kernel. Our artifact, Coccinelle4J, is an extension to Coccinelle in order for it to apply program transformations to Java source code. This artifact accompanies our experience report “Semantic Patches for Java Program Transformation”, in which we show a case study of applying …
Resource Constrained Deep Reinforcement Learning, Abhinav Bhatia, Pradeep Varakantham, Akshat Kumar
Resource Constrained Deep Reinforcement Learning, Abhinav Bhatia, Pradeep Varakantham, Akshat Kumar
Research Collection School Of Computing and Information Systems
In urban environments, resources have to be constantly matched to the “right” locations where customer demand is present. For instance, ambulances have to be matched to base stations regularly so as to reduce response time for emergency incidents in ERS (Emergency Response Systems); vehicles (cars, bikes among others) have to be matched to docking stations to reduce lost demand in shared mobility systems. Such problems are challenging owing to the demand uncertainty, combinatorial action spaces and constraints on allocation of resources (e.g., total resources, minimum and maximum number of resources at locations and regions). Existing systems typically employ myopic and …
Corrn: Cooperative Reflection Removal Network, Renjie Wen, Boxin Shi, Haoliang Li, Ling-Yu Duan, Ah-Hwee Tan, Alex C. Kot
Corrn: Cooperative Reflection Removal Network, Renjie Wen, Boxin Shi, Haoliang Li, Ling-Yu Duan, Ah-Hwee Tan, Alex C. Kot
Research Collection School Of Computing and Information Systems
Removing the undesired reflections from images taken through the glass is of broad application to various computer vision tasks. Non-learning based methods utilize different handcrafted priors such as the separable sparse gradients caused by different levels of blurs, which often fail due to their limited description capability to the properties of real-world reflections. In this paper, we propose a network with the feature-sharing strategy to tackle this problem in a cooperative and unified framework, by integrating image context information and the multi-scale gradient information. To remove the strong reflections existed in some local regions, we propose a statistic loss by …