This document discusses Python raster functions in ArcGIS, which allow users to implement raster analysis and processing algorithms from Python. Key points covered include:
- Raster functions transform one raster dataset into another on-the-fly through a chain of functions.
- Python raster functions are implemented as Python modules that participate in the raster function chain via an ArcGIS adapter.
- Examples demonstrate how to perform tasks like linear spectral unmixing from Python.
- The API for creating Python raster functions and templates is explained.
- Considerations for publishing and optimizing Python raster functions are provided.
A short introduction to the more advanced python and programming in general. Intended for users that has already learned the basic coding skills but want to have a rapid tour of more in-depth capacities offered by Python and some general programming background.
Execrices are available at: https://github.com/chiffa/Intermediate_Python_programming
Erlang factory SF 2011 "Erlang and the big switch in social games"Paolo Negri
talk given at erlang factory 2011 about using erlang to build social games backends
Watch the video of this presentation http://vimeo.com/22144057#at=0
Slides of erlang factory 2011 London talk "Designing for performance with erlang"
Video of this presentation available at http://vimeo.com/26715793#at=0
Combining R With Java For Data Analysis (Devoxx UK 2015 Session)Ryan Cuprak
Java is a general-purpose language and is not particularly well suited for performing statistical analysis. Special languages and software environments have been created by and for statisticians to use. Statisticians think about programming and data analysis much different from Java programmers. These languages and tools make it easy to perform very sophisticated analyses on large data sets easily. Tools, such as R and SAS, contain a large toolbox of statistical tools that are well tested, documented and validated. For data analysis you want to use these tools.
In this session we will provide an overview of how to leverage the power of R from Java. R is the leading open source statistical package/language/environment. The first part of the presentation will provide an overview of R focusing on the differences between R and Java at the language level. We’ll also look at some of the basic and more advanced tests to illustrate the power of R. The second half of the presentation will cover how to integrate R and Java using rJava. We’ll look at leverage R from the new Java EE Batching (JSR 352) to provide robust statistical analysis for enterprise applications.
A peek into Python's Metaclass and Bytecode from a Smalltalk UserKoan-Sin Tan
Understanding object model and bytecode is a crucial part in understanding an interpreted object-oriented language. Smalltalk, one of the oldest object-oriented programming languages, has a great object model and has been used bytecode and VM since 1970s. It is interesting to compare Smalltalk's and Python's object model and bytecode. Guido once said "I remember being surprised by its use of metaclasses (which is quite different from that in Python or Ruby!) when I read about them much later. " and "Smalltalk's bytecode was a bigger influence of Python's bytecode though." It is interesting to compare Smalltalk's and Python's metacalss and bytecode.
A short introduction to the more advanced python and programming in general. Intended for users that has already learned the basic coding skills but want to have a rapid tour of more in-depth capacities offered by Python and some general programming background.
Execrices are available at: https://github.com/chiffa/Intermediate_Python_programming
Erlang factory SF 2011 "Erlang and the big switch in social games"Paolo Negri
talk given at erlang factory 2011 about using erlang to build social games backends
Watch the video of this presentation http://vimeo.com/22144057#at=0
Slides of erlang factory 2011 London talk "Designing for performance with erlang"
Video of this presentation available at http://vimeo.com/26715793#at=0
Combining R With Java For Data Analysis (Devoxx UK 2015 Session)Ryan Cuprak
Java is a general-purpose language and is not particularly well suited for performing statistical analysis. Special languages and software environments have been created by and for statisticians to use. Statisticians think about programming and data analysis much different from Java programmers. These languages and tools make it easy to perform very sophisticated analyses on large data sets easily. Tools, such as R and SAS, contain a large toolbox of statistical tools that are well tested, documented and validated. For data analysis you want to use these tools.
In this session we will provide an overview of how to leverage the power of R from Java. R is the leading open source statistical package/language/environment. The first part of the presentation will provide an overview of R focusing on the differences between R and Java at the language level. We’ll also look at some of the basic and more advanced tests to illustrate the power of R. The second half of the presentation will cover how to integrate R and Java using rJava. We’ll look at leverage R from the new Java EE Batching (JSR 352) to provide robust statistical analysis for enterprise applications.
A peek into Python's Metaclass and Bytecode from a Smalltalk UserKoan-Sin Tan
Understanding object model and bytecode is a crucial part in understanding an interpreted object-oriented language. Smalltalk, one of the oldest object-oriented programming languages, has a great object model and has been used bytecode and VM since 1970s. It is interesting to compare Smalltalk's and Python's object model and bytecode. Guido once said "I remember being surprised by its use of metaclasses (which is quite different from that in Python or Ruby!) when I read about them much later. " and "Smalltalk's bytecode was a bigger influence of Python's bytecode though." It is interesting to compare Smalltalk's and Python's metacalss and bytecode.
How can you handle defects? If you are in a factory, production can produce objects with defects. Or values from sensors can tell you over time that some values are not "normal". What can you do as a developer (not a Data Scientist) with .NET o Azure to detect these anomalies? Let's see how in this session.
Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark...Databricks
As big data jobs move from the proof-of-concept phase into powering real production services, we have to start consider what will happen when everything eventually goes wrong (such as recommending inappropriate products or other decisions taken on bad data). This talk will attempt to convince you that we will all eventually get aboard the failboat (especially with ~40% of respondents automatically deploying their Spark jobs results to production), and its important to automatically recognize when things have gone wrong so we can stop deployment before we have to update our resumes.
Figuring out when things have gone terribly wrong is trickier than it first appears, since we want to catch the errors before our users notice them (or failing that before CNN notices them). We will explore general techniques for validation, look at responses from people validating big data jobs in production environments, and libraries that can assist us in writing relative validation rules based on historical data.
For folks working in streaming, we will talk about the unique challenges of attempting to validate in a real-time system, and what we can do besides keeping an up-to-date resume on file for when things go wrong. To keep the talk interesting real-world examples (with company names removed) will be presented, as well as several creative-common licensed cat pictures and an adorable panda GIF.
If you’ve seen Holden’s previous testing Spark talks this can be viewed as a deep dive on the second half focused around what else we need to do besides good testing practices to create production quality pipelines. If you haven’t seen the testing talks watch those on YouTube after you come see this one
"Walk in a distributed systems park with Orleans" Евгений БобровFwdays
Долгое время разработка производительных, масштабируемых, надежных и экономически эффективных распределенных систем, была прерогативой узкого круга специалистов. Переезд в «облако», сам по себе, проблему не решил. Обещанная провайдерами дешевая линейная масштабируемость, по-прежнему, недостижимая мечта для всех, сидящих «на игле» реляционных баз данных и монолитных архитектур.
С выходом Microsoft Orleans, разработчики, наконец-то, получили максимально простую и удобную платформу для создания масштабируемых и отказоустойчивых распределенных систем, предназначенных для запуска в «облаке» или в приватном дата-центре.
В докладе будут рассмотрены основные концепции и прецеденты использования платформы, такие как: Internet Of Things (IoT), распределенная обработка потоков данных, масштабирование РСУБД и любых других ограниченных ресурсов, отказоустойчивая координация длительно выполняющихся бизнес-процессов.
Aim of this presentation is not to make you masters in Java 8 Concurrency, but to help you guide towards that goal. Sometimes it helps just to know that there is some API that might be suitable for a particular situation. Make use of the pointers given to search more and learn more on those topics. Refer to books, Java API Documentation, Blogs etc. to learn more. Examples and demos for all cases discussed will be added to my blog www.javajee.com.
Webinar: Zing Vision: Answering your toughest production Java performance que...Azul Systems Inc.
Solving Java performance issues in production can be frustrating. You’re left in the dark about what could be causing the problems because standard Java tools have too much performance overhead for production use. They’re designed for development or pre-production testing and realistically can’t be used to monitor a business-critical application during peak loads, which is when the problems occur!
Zing Vision is your flashlight. Its low overhead metric collection is built into Zing, Azul’s high performance virtual machine, and designed to run in production with zero performance overhead. At last, you can see your applications’ operation at the thread level, track memory usage, find “hot” code and even save data for later analysis. In this webinar, Joseph Coha, Azul Systems Senior Staff Engineer, describes how Zing Vision works, shows sample data and discusses how you can use this information to find and fix your most stubborn production performance issues. He also tells you how you can download and try Zing and Zing Vision with your current applications to see for yourself how far you can take the performance of your existing apps.
My 6th. revision of my Stackato presentation given at the German Perl Workshop 2013 in Berlin, Germany,
More information available at: https://logiclab.jira.com/wiki/display/OPEN/Stackato
How can you handle defects? If you are in a factory, production can produce objects with defects. Or values from sensors can tell you over time that some values are not "normal". What can you do as a developer (not a Data Scientist) with .NET o Azure to detect these anomalies? Let's see how in this session.
Validating Big Data Jobs—Stopping Failures Before Production on Apache Spark...Databricks
As big data jobs move from the proof-of-concept phase into powering real production services, we have to start consider what will happen when everything eventually goes wrong (such as recommending inappropriate products or other decisions taken on bad data). This talk will attempt to convince you that we will all eventually get aboard the failboat (especially with ~40% of respondents automatically deploying their Spark jobs results to production), and its important to automatically recognize when things have gone wrong so we can stop deployment before we have to update our resumes.
Figuring out when things have gone terribly wrong is trickier than it first appears, since we want to catch the errors before our users notice them (or failing that before CNN notices them). We will explore general techniques for validation, look at responses from people validating big data jobs in production environments, and libraries that can assist us in writing relative validation rules based on historical data.
For folks working in streaming, we will talk about the unique challenges of attempting to validate in a real-time system, and what we can do besides keeping an up-to-date resume on file for when things go wrong. To keep the talk interesting real-world examples (with company names removed) will be presented, as well as several creative-common licensed cat pictures and an adorable panda GIF.
If you’ve seen Holden’s previous testing Spark talks this can be viewed as a deep dive on the second half focused around what else we need to do besides good testing practices to create production quality pipelines. If you haven’t seen the testing talks watch those on YouTube after you come see this one
"Walk in a distributed systems park with Orleans" Евгений БобровFwdays
Долгое время разработка производительных, масштабируемых, надежных и экономически эффективных распределенных систем, была прерогативой узкого круга специалистов. Переезд в «облако», сам по себе, проблему не решил. Обещанная провайдерами дешевая линейная масштабируемость, по-прежнему, недостижимая мечта для всех, сидящих «на игле» реляционных баз данных и монолитных архитектур.
С выходом Microsoft Orleans, разработчики, наконец-то, получили максимально простую и удобную платформу для создания масштабируемых и отказоустойчивых распределенных систем, предназначенных для запуска в «облаке» или в приватном дата-центре.
В докладе будут рассмотрены основные концепции и прецеденты использования платформы, такие как: Internet Of Things (IoT), распределенная обработка потоков данных, масштабирование РСУБД и любых других ограниченных ресурсов, отказоустойчивая координация длительно выполняющихся бизнес-процессов.
Aim of this presentation is not to make you masters in Java 8 Concurrency, but to help you guide towards that goal. Sometimes it helps just to know that there is some API that might be suitable for a particular situation. Make use of the pointers given to search more and learn more on those topics. Refer to books, Java API Documentation, Blogs etc. to learn more. Examples and demos for all cases discussed will be added to my blog www.javajee.com.
Webinar: Zing Vision: Answering your toughest production Java performance que...Azul Systems Inc.
Solving Java performance issues in production can be frustrating. You’re left in the dark about what could be causing the problems because standard Java tools have too much performance overhead for production use. They’re designed for development or pre-production testing and realistically can’t be used to monitor a business-critical application during peak loads, which is when the problems occur!
Zing Vision is your flashlight. Its low overhead metric collection is built into Zing, Azul’s high performance virtual machine, and designed to run in production with zero performance overhead. At last, you can see your applications’ operation at the thread level, track memory usage, find “hot” code and even save data for later analysis. In this webinar, Joseph Coha, Azul Systems Senior Staff Engineer, describes how Zing Vision works, shows sample data and discusses how you can use this information to find and fix your most stubborn production performance issues. He also tells you how you can download and try Zing and Zing Vision with your current applications to see for yourself how far you can take the performance of your existing apps.
My 6th. revision of my Stackato presentation given at the German Perl Workshop 2013 in Berlin, Germany,
More information available at: https://logiclab.jira.com/wiki/display/OPEN/Stackato
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Does deblurring improve geometrica...IEEEBEBTECHSTUDENTPROJECTS
To Get any Project for CSE, IT ECE, EEE Contact Me @ 09666155510, 09849539085 or mail us - ieeefinalsemprojects@gmail.com-Visit Our Website: www.finalyearprojects.org
Serverless on OpenStack with Docker Swarm, Mistral, and StackStormDmitri Zimine
Intro to Serverless, 101 demo with StackStorm, and real world application of serverless solution.
Slides for OpenStack Summit Boston 2017 talk:
https://www.openstack.org/summit/boston-2017/summit-schedule/events/18325
Most of the talk was a demo, please stay tuned for recording.
Serverless, devops, automation, operations, faas, @Stack_Storm.
Labview1_ Computer Applications in Control_ACRRLMohammad Sabouri
Computer Applications in Control
ACRRL
Applied Control & Robotics Research Laboratory of Shiraz University
Department of Power and Control Engineering, Shiraz University, Fars, Iran.
Instructor: Dr. Asemani
TA: Mohammad Sabouri
https://sites.google.com/view/acrrl/
The Grid the Brad and the Ugly: Using Grids to Improve Your Applicationsbalassaitis
Slide Deck from BP-1207 from Connect 2016
Do you want better features, better performance, and a better UI in your XPages applications? Then display your data in grids instead of built-in controls. In this session, Paul and Brad will demonstrate why grids are a significant improvement in general and cover why one size does not fit all. They will review the features of commonly-used JavaScript grid frameworks (including Dojo, jQuery, Kendo UI, and Sencha) in order to help you determine which is the best fit for your applications.
Operationalizing Machine Learning Using GPU-accelerated, In-database AnalyticsKinetica
Mate Radalj's presentation on how to operationalize machine learning using GPU-accelerated, in-database analytics, given at the Bay Area GPU-Accelerated Computing Meetup on October 19, 2017. Presentation includes use cases and links to demos.
Whether you are building a mobile app or a web app, Apache Usergrid (incubating) can provide you with a complete backend that supports authentication, persistence and social features like activities and followers all via a comprehensive REST API — and backed by Cassandra, giving you linear scalability. This session will tell you what you need to know to be a Usergrid contributor, starting with the basics of building and running Usergrid from source code. You’ll learn how to find your way around the Usergrid code base, how the code for the Stack, Portal and SDKs and how to use the test infrastructure to test your changes to Usergrid. You’ll learn the Usergrid contributor workflow, how the project uses JIRA and Github to manage change and how to contribute your changes to the project. The session will also cover the Usergrid roadmap and what the community is currently working on.
Leveraging Apache Spark to Develop AI-Enabled Products and Services at BoschDatabricks
The Bosch Center for Artificial Intelligence provides AI services to Bosch’s business units and manufacturing plants. We strive to generate value for our customers by deploying machine learning in their products, services, and processes across different domains such Manufacturing, Engineering, Supply Chain Management, as well as Intelligent Services.
Reveal's Advanced Analytics: Using R & PythonPoojitha B
Learn how you can use Reveal’s R & Python scripting capability to bring advanced data preparation, deeper analytics, and richer visualizations to your users!
Deep learning and streaming in Apache Spark 2.2 by Matei ZahariaGoDataDriven
Matei Zaharia is an assistant professor of computer science at Stanford University, Chief Technologist and Co-founder of Databricks. He started the Spark project at UC Berkeley and continues to serve as its vice president at Apache. Matei also co-started the Apache Mesos project and is a committer on Apache Hadoop. Matei’s research work on datacenter systems was recognized through two Best Paper awards and the 2014 ACM Doctoral Dissertation Award.
The Cytoscape Cyberinfrastructure extends Cytoscape and its community into web-connected services.The CI is a Service Oriented Architecture that supports network biology oriented computations that can be orchestrated into repeatable workflows.
Application of the Actor Model to Large Scale NDE Data AnalysisChrisCoughlin9
The Actor model of concurrent computation discretizes a problem into a series of independent units or actors that interact only through the exchange of messages. Without direct coupling between individual components, an Actor-based system is inherently concurrent and fault-tolerant. These traits lend themselves to so-called “Big Data” applications in which the volume of data to analyze requires a distributed multi-system design. For a practical demonstration of the Actor computational model, a system was developed to assist with the automated analysis of Nondestructive Evaluation (NDE) datasets using the open source Myriad Data Reduction Framework. A machine learning model trained to detect damage in two-dimensional slices of C-Scan data was deployed in a streaming data processing pipeline. To demonstrate the flexibility of the Actor model, the pipeline was deployed on a local system and re-deployed as a distributed system without recompiling, reconfiguring, or restarting the running application.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
3. What’s a Raster Function?
• Mapping of one raster to another.
• Loosely
• Transient: on the fly.
• Different from a geoprocessing tool.
… a transformation of one raster into another.
The Fundamentals
4. What’s a Raster Function Chain?
The Basic Model
Function Raster Dataset
Mosaic Dataset Item
Image Service
Mosaic Dataset
A raster function “chain” encapsulate your algorithm as a tree of functions.
7. What’s a Python Raster Function?
• Natural evolution of the raster function’s COM API—usually implemented in
.NET
• Implement a raster function from the comfort of your Python module.
• Architecture: Module loaded by an adapter—Python-aware and a first-class
participant in the function chain.
Your Python module—assisted by ArcGIS—is a raster function.
The Extended Model
8. What’s a Python Raster Function?
The Extended Model
Function Raster Dataset
Mosaic Dataset Item
Image Service
Mosaic Dataset
9. Motivation
• Extend ArcGIS—participate in a raster function chain.
• Primary pipeline for image data in ArcGIS—processing, analyzing, and
visualizing… on the fly.
• Portable. Reusable. Dynamic. Fast. Scalable.
• Why Python?
- Friendly & easy to learn. “readability first”. “batteries included”.
- Huge collection of libraries. Vibrant community of Pythonistas and Pythoneers.
- “…de facto superglue language for modern scientific computing.”
- “…tools for almost every aspect of scientific computing are readily available in Python.”
Why Raster Functions in Python?
11. Linear Spectral Unmixing
• Determines abundance of certain material in a particular pixel.
• Typically performed on lower resolution imagery (like Landsat)
• Input training endmember spectra required for each class
Introducing a Sample Use Case
13. Demo
A Python Raster Function in Action: Linear Spectral Unmixing
Courtesy: Jacob Wasilkowski. @jwasil
14. The API
• How does ArcGIS Desktop or Server interact with my raster function?
• Get started—step-by-step guide
• Real-world or reference implementations—excellent springboard
• Well-documented API reference
• What additional libraries are needed? How complicated is it?
• Lightweight design—no external dependencies outside of NumPy to begin with.
• ArcGIS’ adapter provides assistance—opt out to take control of specific aspects.
Create a new raster function using simple and familiar Pythonesque constructs.
How do I create Raster Function in Python?
16. The API
• customize our function object—a specific
instance of our class—as soon as it's created.
• Define raster function name & description.
__init__
17. The API
• Define all input parameters to the function.
• For each parameter, define:
- Name (Identifier)
- Display Name
- Long Description
- Data Type
- Default Value
- Required vs Optional
- …
getParameterInfo()
18. The API
• How are input rasters read—Padding, Mask, …?
• How’s the output raster constructed—inherit NoData, Metadata, …?
• Given: Nothing.
• Returns: dictionary containing configuration attribute values.
getConfiguration()
19. The API
• Define a subset of input rasters.
• Pixels read from selected rasters.
• Given: properties of the requested pixel block,
all scalar parameter values.
• Returns: names of selected rasters.
selectRasters()
20. The API
• Defines the output raster.
• Invoked each time a dataset containing the Python raster function is
initialized.
• Given: Raster info associated with all input rasters.
• Returns: Raster Info of the output raster.
updateRasterInfo()
21. The API
• Workhorse of the raster function. Process Pixels.
• Given:
• Expected pixel-block size+location
• output raster properties (map space)
• pixels+mask of selected input rasters
• Returns: Pixels+mask of requested pixel block.
updatePixels()
22. The API
• Create or update dataset- or band-level metadata.
• Given:
• property names
• band index
• current key metadata values
• Returns: updated values of given properties
updateKeyMetadata()
23. The API
• Given:
• info on parent product,
• context of execution.
• Returns:
• OK to Run (Boolean)—Licensed to execute or not?
• Expected product level and extension.
isLicensed()
26. What’s a Raster Function Template?
A raster function template anonymizes select raster and scalar inputs as Variables.
The Basic Model
Template
Input
Raster
Variables
Input
Scalar
Variables
Output
Raster
27. Raster Function Templates
• Create new function templates
- Via Raster Function Template Editor
- Layer > Symbology > Export As Raster Function Template
- Function Raster Dataset > Functions > Save as
• Function Raster Layer in a Map
• Image Analysis Window
• Raster Functions Pane in Pro
• Layer > Properties > Functions tab
A raster function template makes your processing or analysis portable.
Basic Workflows
28. Raster Function Templates
• On a Mosaic Dataset
- Populating a mosaic using the Add Rasters tool
- Mosaic dataset items
- Batch Edit Raster Functions or
- Edit Raster Function Geoprocessing Tool.
- As Processing Templates
• On an Image Service—for server-side processing
Learn more at https://github.com/Esri/raster-functions#raster-function-templates.
Advanced Workflows
29. Raster Function Templates
• Name & Description
• Type: Item, Group, or Mosaic.
• Definition Query
• Fields that control grouping.
Properties
33. Performance
• Vectorize.
• Use NumPy and SciPy.
• Use Cython: For production-grade performance.
• Bridge to C/C++ implementations via ctypes or Boost.Python.
Leverage well-known options to optimize time-critical parts of your raster function.
34. Publishing & Deployment
• Python version
• Desktop vs. Pro: Python 2.7 vs. 3.4
• Desktop vs. Server: 32- vs. 64-bit Python 2.7
• Package dependencies
• Binary deployment
• CPython bytecode. Cython compiled binary.
• isLicensed method to restrict usage.
35. GitHub
• https://github.com/Esri/raster-functions
• Curated collection of raster functions and templates.
• Go ahead:
- Browse samples to learn more.
- Fork the repo. Experiment.
- Log defects or enhancement requests as issues.
- Send pull requests to contribute code.
GitHub enables collaboration.
Where do functions and templates live?
37. The Road Ahead
• Tools for testing your raster functions—profiling or debugging.
• Streamline usability of Python raster functions in ArcGIS Pro.
• Integration with Portal workflows.
• Expand and maintain the wiki: API, recommendations, resources.
…for Pythonistas and Pythoneers with a passion for scientific computing.
38. In Closing
• Powerful pipeline for processing, analysis, and visualization.
- Raster Functions. Chains. Templates.
• Using simple constructs in Python: participate and exploit.
• Code and docs are on GitHub.
• We’ll help you along the way—@jdrisdelle and @akferoz.
Wake up! We are done.
Python (NumPy/SciPy) for numerical computing;
Python (NumPy/SciPy/pandas/statsmodels) for statistical analysis;
Python (MatPlotLib) for plotting and visualization
Python (scikit-learn) for machine learning;
“Python is becoming the de facto superglue language for modern scientific computing.”
--http://profjsb.github.io/python-seminar/
“These days, tools for almost every aspect of scientific computing are readily available in Python.”
--http://www.talyarkoni.org/blog/2013/11/18/the-homogenization-of-scientific-computing-or-why-python-is-steadily-eating-other-languages-lunch/
“Spectral imaging sensors often record scenes
in which numerous disparate material substances
contribute to the spectrum measured
from a single pixel. Given such mixed pixels, we want
to identify the individual constituent materials
present in the mixture, as well as the proportions in
which they appear. Spectral unmixing is the procedure
by which the measured spectrum of a mixed
pixel is decomposed into a collection of constituent
spectra, or endmembers, and a set of corresponding
fractions, or abundances, that indicate the proportion
of each endmember present in the pixel. Endmembers
normally correspond to familiar macroscopic objects
in the scene, such as water, soil, metal, or any
natural or man-made material. Unmixing provides a
capability that is important in numerous tactical scenarios
in which subpixel detail is valuable.” – Nirmal Keshava