Towards Decoupling Nullability Semantics from Indirect Access in Pointer Use∗
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
“实时交互”的im技术,将会有什么新机遇? 2019-08-26 袁武林
ᭆʼn ᩪᭆŊ ᶾݐᩪᭆᔜߝ᧞ᑕݎ ғמஙے ᤒ 下载APPڜහਁʼn Ŋ ឴ݐռᓉݎ 开篇词 | 搞懂“实时交互”的IM技术,将会有什么新机遇? 2019-08-26 袁武林 即时消息技术剖析与实战 进入课程 讲述:袁武林 时长 13:14 大小 12.13M 你好,我是袁武林。我来自新浪微博,目前在微博主要负责消息箱和直播互动相关的业务。 接下来的一段时间,我会给你带来一个即时消息技术方面的专栏课程。 你可能会很好奇,为什么是来自微博的技术人来讲这个课程,微博会用到 IM 的技术吗? 在我回答之前,先请你思考一个问题: 除了 QQ 和微信,你知道还有什么 App 会用到即时(实时)消息技术吗? 其实,除了 QQ 和微信外,陌陌、抖音等直播业务为主的 App 也都深度用到了 IM 相关的 技术。 比如在线学习软件中的“实时在线白板”,导航打车软件中的“实时位置共享”,以及和我 们生活密切相关的智能家居的“远程控制”,也都会通过 IM 技术来提升人和人、人和物的 实时互动性。 我觉得可以这么理解:包括聊天、直播、在线客服、物联网等这些业务领域在内,所有需 要“实时互动”“高实时性”的场景,都需要、也应该用到 IM 技术。 微博因为其多重的业务需求,在许多业务中都应用到了 IM 技术,目前除了我负责的消息箱 和直播互动业务外,还有其他业务也逐渐来通过我们的 IM 通用服务,提升各自业务的用户 体验。 为什么这么多场景都用到了 IM 技术呢,IM 的技术究竟是什么呢? 所以,在正式开始讲解技术之前,我想先从应用场景的角度,带你了解一下 IM 技术是什 么,它为互联网带来了哪些巨大变革,以及自身蕴含着怎样的价值。 什么是 IM 系统? 我们不妨先看一段旧闻: 2014 年 Facebook 以 190 亿美元的价格,收购了当时火爆的即时通信工具 WhatsApp,而此时 WhatsApp 仅有 50 名员工。 是的,也就是说这 50 名员工人均创造了 3.8 亿美元的价值。这里,我们不去讨论当时谷歌 和 Facebook 为争抢 WhatsApp 发起的价格战,从而推动这笔交易水涨船高的合理性,从 另一个侧面我们看到的是:依托于 IM 技术的社交软件,在完成了“连接人与人”的使命 后,体现出的巨大价值。 同样的价值体现也发生在国内。1996 年,几名以色列大学生发明的即时聊天软件 ICQ 一 时间风靡全球,3 年后的深圳,它的效仿者在中国悄然出现,通过熟人关系的快速构建,在 一票基于陌生人关系的网络聊天室中脱颖而出,逐渐成为国内社交网络的巨头。 那时候这个聊天工具还叫 OICQ,后来更名为 QQ,说到这,大家应该知道我说的是哪家公 司了,没错,这家公司叫腾讯。在之后的数年里,腾讯正是通过不断优化升级 IM 相关的功 能和架构,凭借 QQ 和微信这两大 IM 工具,牢牢控制了强关系领域的社交圈。 ےۓ由此可见,IM 技术作为互联网实时互动场景的底层架构,在整个互动生态圈的价值所在。᧗ 随着互联网的发展,人们对于实时互动的要求越来越高。于是,IMᴠྊෙๅ 技术不止应用于 QQ、 微信这样的面向聊天的软件,它其实有着宽广的应用场景和足够有想象力的前景。甚至在不 。ғ 系统已经根植于我们的互联网生活中,成为各大 App 必不可少的模块מஙݎ知不觉之间,IMḒ 除了我在前面图中列出的业务之外,如果你希望在自己的 App 里加上实时聊天或者弹幕的 功能,通过 IM 云服务商提供的 SDK 就能快速实现(当然如果需求比较简单,你也可以自 己动手来实现)。 比如,在极客时间 App 中,我们可以加上一个支持大家点对点聊天的功能,或者增加针对 某一门课程的独立聊天室。 例子太多,我就不做一一列举了。其实我想说的是:IM -
Master Thesis
Master thesis To obtain a Master of Science Degree in Informatics and Communication Systems from the Merseburg University of Applied Sciences Subject: Tunisian truck license plate recognition using an Android Application based on Machine Learning as a detection tool Author: Supervisor: Achraf Boussaada Prof.Dr.-Ing. Rüdiger Klein Matr.-Nr.: 23542 Prof.Dr. Uwe Schröter Table of contents Chapter 1: Introduction ................................................................................................................................. 1 1.1 General Introduction: ................................................................................................................................... 1 1.2 Problem formulation: ................................................................................................................................... 1 1.3 Objective of Study: ........................................................................................................................................ 4 Chapter 2: Analysis ........................................................................................................................................ 4 2.1 Methodological approaches: ........................................................................................................................ 4 2.1.1 Actual approach: ................................................................................................................................... 4 2.1.2 Image Processing with OCR: ................................................................................................................ -
An Accuracy Examination of OCR Tools
International Journal of Innovative Technology and Exploring Engineering (IJITEE) ISSN: 2278-3075, Volume-8, Issue-9S4, July 2019 An Accuracy Examination of OCR Tools Jayesh Majumdar, Richa Gupta texts, pen computing, developing technologies for assisting Abstract—In this research paper, the authors have aimed to do a the visually impaired, making electronic images searchable comparative study of optical character recognition using of hard copies, defeating or evaluating the robustness of different open source OCR tools. Optical character recognition CAPTCHA. (OCR) method has been used in extracting the text from images. OCR has various applications which include extracting text from any document or image or involves just for reading and processing the text available in digital form. The accuracy of OCR can be dependent on text segmentation and pre-processing algorithms. Sometimes it is difficult to retrieve text from the image because of different size, style, orientation, a complex background of image etc. From vehicle number plate the authors tried to extract vehicle number by using various OCR tools like Tesseract, GOCR, Ocrad and Tensor flow. The authors in this research paper have tried to diagnose the best possible method for optical character recognition and have provided with a comparative analysis of their accuracy. Keywords— OCR tools; Orcad; GOCR; Tensorflow; Tesseract; I. INTRODUCTION Optical character recognition is a method with which text in images of handwritten documents, scripts, passport documents, invoices, vehicle number plate, bank statements, Fig.1: Functioning of OCR [2] computerized receipts, business cards, mail, printouts of static-data, any appropriate documentation or any II. OCR PROCDURE AND PROCESSING computerized receipts, business cards, mail, printouts of To improve the probability of successful processing of an static-data, any appropriate documentation or any picture image, the input image is often ‘pre-processed’; it may be with text in it gets processed and the text in the picture is de-skewed or despeckled. -
Enforcing Abstract Immutability
Enforcing Abstract Immutability by Jonathan Eyolfson A thesis presented to the University of Waterloo in fulfillment of the thesis requirement for the degree of Doctor of Philosophy in Electrical and Computer Engineering Waterloo, Ontario, Canada, 2018 © Jonathan Eyolfson 2018 Examining Committee Membership The following served on the Examining Committee for this thesis. The decision of the Examining Committee is by majority vote. External Examiner Ana Milanova Associate Professor Rensselaer Polytechnic Institute Supervisor Patrick Lam Associate Professor University of Waterloo Internal Member Lin Tan Associate Professor University of Waterloo Internal Member Werner Dietl Assistant Professor University of Waterloo Internal-external Member Gregor Richards Assistant Professor University of Waterloo ii I hereby declare that I am the sole author of this thesis. This is a true copy of the thesis, including any required final revisions, as accepted by my examiners. I understand that my thesis may be made electronically available to the public. iii Abstract Researchers have recently proposed a number of systems for expressing, verifying, and inferring immutability declarations. These systems are often rigid, and do not support “abstract immutability”. An abstractly immutable object is an object o which is immutable from the point of view of any external methods. The C++ programming language is not rigid—it allows developers to express intent by adding immutability declarations to methods. Abstract immutability allows for performance improvements such as caching, even in the presence of writes to object fields. This dissertation presents a system to enforce abstract immutability. First, we explore abstract immutability in real-world systems. We found that developers often incorrectly use abstract immutability, perhaps because no programming language helps developers correctly implement abstract immutability. -
Seed Selection for Successful Fuzzing
Seed Selection for Successful Fuzzing Adrian Herrera Hendra Gunadi Shane Magrath ANU & DST ANU DST Australia Australia Australia Michael Norrish Mathias Payer Antony L. Hosking CSIRO’s Data61 & ANU EPFL ANU & CSIRO’s Data61 Australia Switzerland Australia ABSTRACT ACM Reference Format: Mutation-based greybox fuzzing—unquestionably the most widely- Adrian Herrera, Hendra Gunadi, Shane Magrath, Michael Norrish, Mathias Payer, and Antony L. Hosking. 2021. Seed Selection for Successful Fuzzing. used fuzzing technique—relies on a set of non-crashing seed inputs In Proceedings of the 30th ACM SIGSOFT International Symposium on Software (a corpus) to bootstrap the bug-finding process. When evaluating a Testing and Analysis (ISSTA ’21), July 11–17, 2021, Virtual, Denmark. ACM, fuzzer, common approaches for constructing this corpus include: New York, NY, USA, 14 pages. https://doi.org/10.1145/3460319.3464795 (i) using an empty file; (ii) using a single seed representative of the target’s input format; or (iii) collecting a large number of seeds (e.g., 1 INTRODUCTION by crawling the Internet). Little thought is given to how this seed Fuzzing is a dynamic analysis technique for finding bugs and vul- choice affects the fuzzing process, and there is no consensus on nerabilities in software, triggering crashes in a target program by which approach is best (or even if a best approach exists). subjecting it to a large number of (possibly malformed) inputs. To address this gap in knowledge, we systematically investigate Mutation-based fuzzing typically uses an initial set of valid seed and evaluate how seed selection affects a fuzzer’s ability to find bugs inputs from which to generate new seeds by random mutation. -
CSI: Inferring Mobile ABR Video Adaptation Behavior Under HTTPS and QUIC
CSI: Inferring Mobile ABR Video Adaptation Behavior under HTTPS and QUIC Shichang Xu Subhabrata Sen Z. Morley Mao University of Michigan AT&T Labs – Research University of Michigan Abstract Server Manifest Network Client Mobile video streaming services have widely adopted Adap- Chunks HTTP tive Bitrate (ABR) streaming to dynamically adapt the stream- Track ing quality to variable network conditions. A wide range of 720p 1 Buffer third-party entities such as network providers and testing 480p IP packets services need to understand such adaptation behavior for 360p 1 2 3 Index purposes such as QoE monitoring and network management. CSI The traditional approach involved conducting test runs and analyzing the HTTP-level information from the associated network traffic to understand the adaptation behavior under Figure 1. ABR streaming overview different network conditions. However, end-to-end traffic encryption protocols such as HTTPS and QUIC are being increasingly used by streaming services, hindering such tra- Rate (ABR) streaming (predominantly HLS [75] and DASH [31]) ditional traffic analysis approaches. has been widely adopted in industry for delivering satisfac- To address this, we develop CSI (Chunk Sequence Infer- tory Quality of Experience (QoE) over dynamic cellular net- encer), a general system that enables third-parties to conduct work conditions. The server encodes each video into multiple active measurements and infer mobile ABR video adapta- versions with different picture quality levels and encoding tion behavior based on packet size and timing information bitrates (with higher bitrates for higher-quality encodings) still available in the encrypted traffic. We perform exten- called tracks, and splits each track into shorter chunks, each sive evaluations and demonstrate that CSI achieves high representing a few seconds worth of playback content (Fig- inference accuracy for video encodings of popular streaming ure 1). -
Darwinian Code Optimisation
Darwinian Code Optimisation Michail Basios A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy of University College London. Department of Computer Science University College London January 18, 2019 2 I, Michail Basios, confirm that the work presented in this thesis is my own. Where information has been derived from other sources, I confirm that this has been indicated in the work. Abstract Programming is laborious. A long-standing goal is to reduce this cost through automation. Genetic Improvement (GI) is a new direction for achieving this goal. It applies search to the task of program improvement. The research conducted in this thesis applies GI to program optimisation and to enable program optimisation. In particular, it focuses on automatic code optimisation for complex managed runtimes, such as Java and Ethereum Virtual Machines. We introduce the term Darwinian Data Structures (DDS) for the data structures of a program that share a common interface and enjoy multiple implementations. We call them Darwinian since we can subject their implementations to the survival of the fittest. We introduce ARTEMIS, a novel cloud-based multi-objective multi-language optimisation framework that automatically finds optimal, tuned data structures and rewrites the source code of applications accordingly to use them. ARTEMIS achieves substantial performance improvements for 44 diverse programs. ARTEMIS achieves 4:8%, 10:1%, 5:1% median improvement for runtime, memory and CPU usage. Even though GI has been applied succesfully to improve properties of programs running in different runtimes, GI has not been applied in Blockchains, such as Ethereum. -
Expense Tracking Mobile Application with Receipt Scanning Functionality Bachelor’S Thesis
TALLINN UNIVERSITY OF TECHNOLOGY Faculty of Information Technology Department of Computer Science Chair of Network Software Expense tracking mobile application with receipt scanning functionality Bachelor’s thesis Student: Roman Kaskman Student code: 113089 IAPB Advisor: Roger Kerse Tallinn 2015 Author’s declaration I declare that this thesis is the result of my own research except as cited in the references. The thesis has not been accepted for any degree and is not concurrently submitted in candidature of any other degree. 25.05.2015 Roman Kaskman (date) (signature) Abstract The purpose of this thesis is to create a mobile application for expense tracking, with the main focus on functionality allowing to take pictures of receipts issued by Estonian enterprises, extract basic expense information from the captured receipt images and store extracted expenses information in authenticated user’s expense list. The main problems covered in this work are finding the best architectural and design solutions for the application from the perspective of performance, usability, security and further development as well as researching and implementing techniques to handle expense recognition from receipts in an efficient way. As a result of the thesis, a working implementation of expense tracking mobile application for Android appears. After functionality of expenses information extraction from receipt images passes the testing phase, conclusion regarding its reliability is made. Moreover, proposals for further improvements of the application’s functionality are also presented. The thesis is in English and contains 53 pages of text, 6 chapters and 14 figures. Annotatsioon Käesoleva bakalaureusetöö eesmärk on luua mobiilirakendus kasutaja kulude üle arvestuse pidamiseks ja dokumenteerimiseks. -
Microsoft / Vcpkg
Microsoft / vcpkg master vcpkg / ports / Create new file Find file History Fetching latest commit… .. abseil [abseil][aws-sdk-cpp][breakpad][chakracore][cimg][date][exiv2][libzip… Apr 13, 2018 ace Update to ACE 6.4.7 (#3059) Mar 19, 2018 alac-decoder [alac-decoder] Fix x64 Mar 7, 2018 alac [ports] Mark several ports as unbuildable on UWP Nov 26, 2017 alembic [alembic] update to 1.7.7 Mar 25, 2018 allegro5 [many ports] Updates to latest Nov 30, 2017 anax [anax] Use vcpkg_from_github(). Add missing vcpkg_copy_pdbs() Sep 25, 2017 angle [angle] Add CMake package with modules. (#2223) Nov 20, 2017 antlr4 [ports] Mark several ports as unbuildable on UWP Nov 26, 2017 apr-util vcpkg_configure_cmake (and _meson) now embed debug symbols within sta… Sep 9, 2017 apr [ports] Mark several ports as unbuildable on UWP Nov 26, 2017 arb [arb] prefer ninja Nov 26, 2017 args [args] Fix hash Feb 24, 2018 armadillo add armadillo (#2954) Mar 8, 2018 arrow Update downstream libraries to use modularized boost Dec 19, 2017 asio [asio] Avoid boost dependency by always specifying ASIO_STANDALONE Apr 6, 2018 asmjit [asmjit] init Jan 29, 2018 assimp [assimp] Fixup: add missing patchfile Dec 21, 2017 atk [glib][atk] Disable static builds, fix generation to happen outside t… Mar 5, 2018 atkmm [vcpkg-build-msbuild] Add option to use vcpkg's integration. Fixes #891… Mar 21, 2018 atlmfc [atlmfc] Add dummy port to detect atl presence in VS Apr 23, 2017 aubio [aubio] Fix missing required dependencies Mar 27, 2018 aurora Added aurora as independant portfile Jun 21, 2017 avro-c -
Character Recognition in Natural Images Utilising Tensorflow
DEGREE PROJECT IN TECHNOLOGY, FIRST CYCLE, 15 CREDITS STOCKHOLM, SWEDEN 2017 Character Recognition in Natural Images Utilising TensorFlow ALEXANDER VIKLUND EMMA NIMSTAD KTH ROYAL INSTITUTE OF TECHNOLOGY SCHOOL OF COMPUTER SCIENCE AND COMMUNICATION Character Recognition in Natural Images Utilising TensorFlow ALEXANDER VIKLUND EMMA NIMSTAD Degree project in Computer Science, DD143X Date: June 12, 2017 Supervisor: Kevin Smith Examiner: Örjan Ekeberg Swedish title: Teckenigenkänning i naturliga bilder med TensorFlow School of Computer Science and Communication Abstract Convolutional Neural Networks (CNNs) are commonly used for character recogni- tion. They achieve the lowest error rates for popular datasets such as SVHN and MNIST. Usage of CNN is lacking in research about character classification in nat- ural images regarding the whole English alphabet. This thesis conducts an experi- ment where TensorFlow is used to construct a CNN that is trained and tested on the Chars74K dataset, with 15 images per class for training and 15 images per class for testing. This is done with the aim of achieving a higher accuracy than the non-CNN approach by de Campos et al. [1], that achieved 55:26%. The thesis explores data augmentation techniques for expanding the small training set and evaluates the result of applying rotation, stretching, translation and noise- adding. The result of this is that all of these methods apart from adding noise gives a positive effect on the accuracy of the network. Furthermore, the experiment shows that with a three layered convolutional neural network it is possible to create a character classifier that is as good as de Campos et al.’s. -
PDF Bekijken
OSS voor Windows: Fotografie en Grafisch Ook Ook Naam Functie Website Linux NL Wireless photo download from Airnef Nikon, Canon and Sony ja nee testcams.com/airnef cameras ArgyllCMS Color Management System ja nee argyllcms.com Birdfont Font editor ja ja birdfont.org 3D grafisch modelleren, Blender animeren, weergeven en ja ja www.blender.org terugspelen RAW image editor (sinds Darktable ja ja www.darktable.org versie 2.4 ook voor Windows) Creating and editing technical Dia ja nee live.gnome.org/Dia diagrams Geavanceerd programma voor Digikam ja ja www.digikam.org het beheren van digitale foto's Display Calibration and DisplayCAL Characterization powered by ja nee displaycal.net Argyll CMS Drawpile Tekenprogramma ja nee drawpile.net Reading, writing and editing Exiftool photographic metadata in a ja ? sno.phy.queensu.ca/~phil/exiftool/ wide variety of files Met Fotowall kunnen FotoWall fotocollages in hoge resolutie ja nee www.enricoros.com/opensource/fotowall worden gemaakt. 3D CAD and CAM (Computer gCAD3D Aided Design and ja nee gcad3d.org Manufacturing) A Gtk/Qt front-end to gImageReader Tesseract OCR (Optical ja nee github.com/.../gImageReader Character Recognition). GNU Image Manipulation Program voor het bewerken The GIMP ja ja www.gimp.org van digitale foto's en maken van afbeeldingen Workflow oriented photo GTKRawGallery ja nee gtkrawgallery.sourceforge.net retouching software Guetzli Perceptual JPEG encoder ja nee github.com/google/guetzli Maakt panorama uit meerdere Hugin ja ja hugin.sourceforge.net foto's Lightweight, versatile image ImageGlass nee nee www.imageglass.org viewer Create, edit, compose, or ImageMagick ja ? www.imagemagick.org convert bitmap images. -
Wen-Chieh Wu Technical LEAD · SOFTWARE Architect · FULL STACK Engineer
Wen-Chieh Wu TECHNiCAL LEAD · SOFTWARE ARCHiTECT · FULL STACK ENGiNEER [email protected] | jeromewu.github.io | jeromewu | wenchiehwu | jeromewus Summary Passionate problem solver, technology enthusiast, compassionate leader with 7+ years as software engineer and architect and 5+ years as technical lead in multidisciplinary environments. Excel in leadership, critical thinking, communication and software engineering & architecture . Strong skills in JavaScript (incl. React, Express), Golang, Docker, CI/CD pipelines and software architecture design. Major contributor of tesseract.js (24.8k+ stars) and ffmpeg.wasm (6.1k+ stars). Certified architecting, data engineering, big data and machine learning specializations in Google Cloud Platform. Work Experience ByteDance Singapore STAFF SOFTWARE ENGiNEER Aug. 2021 ‑ PRESENT INTELLLEX Singapore TECHNiCAL LEAD Apr. 2020 ‑ Jul. 2021 • Led a team of backend and frontend engineers to develop knowledge platform for law. • Led re‑architecture project which eliminates 10+ redundant services, boosts observability and flexibility of data analysis pipeline and reduce cost • Reduced 30% of AWS cost in 2 months • Succeed in supporting to pass company ISO 27001 annual audit without any NC. Delta Electronics Taipei City, Taiwan SOFTWARE ARCHiTECT & PRODUCT MANAGER May 2019 ‑ Mar. 2020 • Established a cross‑region project team with 10+ members to research and develop an edge computing solution in manufacturing industry. • Designed a microservice software architecture for edge computing solution to enable flexiblity and scalibility. • Adopted gitlab‑CI and Ansible to deploy microservices in Kubernetes cluster to minize deployment efforts. • Developed a tensorflow serving like interface library in Golang. SENiOR TECHNiCAL LEAD Feb. 2018 ‑ May 2019 (1 year 4 months) • Established a corss‑region team of engineers, designers and QA with 20+ members in charge of front‑end development.